Вы находитесь на странице: 1из 14

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

Tema 4
Introduccin al lenguaje: variables y
operadores

Autor
Ismael Chakroun Muoz (ismael@um.es)

pgina 1

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

Contenido
1

Introduccin al Lenguaje....................................................................................... 3
1.1

Comentarios...................................................................................................... 3

1.2

Tipos de datos................................................................................................... 3

1.2.1

Enteros ...................................................................................................... 4

1.2.2

Real........................................................................................................... 4

1.2.3

Strings....................................................................................................... 4

Variables.................................................................................................................. 6
2.1

Variables numricas ......................................................................................... 6

2.1.1

Enteros ...................................................................................................... 6

2.1.2

Real........................................................................................................... 6

2.1.3

Variables alfanumricas ........................................................................... 6

2.1.4

Arrays o tablas.......................................................................................... 6

2.1.5

Curiosidades de las variables en PHP....................................................... 6

2.2

Variables por referencia.................................................................................... 7

2.3

Variable predefinidas........................................................................................ 8

2.3.1

Variables de Apache................................................................................. 8

2.3.2

Variables de PHP.................................................................................... 11

Constantes ............................................................................................................. 12

Operadores............................................................................................................ 12
4.1

Operadores Aritmticos.................................................................................. 12

4.2

Operadores de Cadenas .................................................................................. 12

4.3

Operadores de Comparacin .......................................................................... 13

4.4

Operadores Lgicos........................................................................................ 13

4.5

Operadores de asignacin............................................................................... 13

pgina 2

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

1 Introduccin al Lenguaje
PHP es un lenguaje no posicional, por lo que no importa la columna en la cual se
comience a escribir el cdigo. Tampoco influye sobre el cdigo la cantidad de saltos de
lnea (enter) que se coloquen, ni la cantidad de espacios.
La forma en la que se separan las distintas sentencias es mediante la utilizacin de ;.
En PHP cada sentencia debe finalizar con ;.
Se puede escribir ms de una sentencia en la misma lnea siempre y cuando las mismas
se encuentren separadas con ;.

1.1 Comentarios
En PHP hay 3 formas distintas de incluir comentarios:
/* Al estilo de C
en donde el comentario empieza
y termina delimitado por barra asterisco y asterisco barra
*/
O bien usando
// Comentario
O por ltimo
# Comentario
En las dos ltimas variantes el comentario empieza en donde se encuentra el // o el
# y termina cuando
termina la lnea.

1.2 Tipos de datos


PHP soporta los siguientes tipos de datos:
-

Enteros.

Arrays (Tema 6).

Real

String: Cadenas de texto.

Objetos (Es esto curso no se van a ver).

En general el tipo de dato de una variable no es decidido por el programador sino que lo
decide el lenguaje en tiempo de ejecucin. Esto significa que no es necesario declarar
variables. Esto supone aun mas sencillez a lo hora de trabajar con un lenguaje, te
permite mucho mas movilidad.

pgina 3

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

A continuacin vamos a ir explicando y mostrando ejemplos de cada un de los tipos de


datos mencionados anteriormente.

1.2.1 Enteros
Los enteros, como bien especifica su nombre, es un tipo que almacena nmeros de
enteros.
Ejemplos:
$a = 1234; # nmero decimal
$a = -123; # nmero negativo
$a = 0123; # nmero octal (83 en decimal)
$a = 0x12; #nmero en hexadecimal (18 decimal)

1.2.2 Real
El tipo de dato Real, es tipo de dato que almacena nmeros decimales.
$a = 1.234;
$a = 1.2e3;

1.2.3 Strings
En PHP los strings tienen un manejo similar al utilizado en C o C++, estn
predefinidos los siguientes

Caracteres protegidos
Secuencia

Significado

\n

Nueva Lnea

\r

Retorno de carro

\t

Fabulacin horizontal

\\

Barra invertida

\$

Signo de dlar

Comillas dobles

pgina 4

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

Un string puede inicializarse usando comillas dobles o comillas simples. Cuando se


utilizan comillas dobles el interprete de php parsea previamente el string, es decir que
reemplaza los nombres de variables que encuentra en el string por el contenido de la
variable. Cuando se usan comillas simples el string se imprime tal y como figura sin ser
parseado.
Ejemplos:
$x=Juan;
$s=Hola $x;
$t=Hola $x
$s vale Hola Juan y $t vale Hola $x.

Otra forma de inicializar un string es usando un string multilnea de la siguiente manera:


$str=<<<EOD
Este es un ejemplo de un string
que ocupa varias lneas y se puede
definir as
EOD;

Se pueden concatenar strings usando el operador . de la siguiente manera:


$x=hola;
$y=mundo;
$s=$x.$y; #$s es igual a holamundo.
$s=$x. .$y; # Aqu $s vale hola mundo

pgina 5

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

2 Variables
En PHP las variables se representan como un signo de dlar seguido por el nombre de la
variable. El nombre de la variable es sensible a minsculas y maysculas.

$var = "Juan";
$Var = "Martinez";
echo "$var, $Var"; // produce la salida "Juan, Martinez "
Dependiendo de la informacin que contenga, una variable puede ser considerada de
uno u otro tipo.

2.1 Variables numricas


2.1.1 Enteros
Las variables de tipo entero, almacenan enteros.
$entero = 1234;
o
$entero = -1234;

2.1.2 Real
Las variables de tipo Real almacenan nmeros decimales.
$real = 1.43225;
o
$real = -1.43225;

2.1.3 Variables alfanumricas


Las variables alfanumricas, almacenas cadenas de texto.
$cadena = Hola Mundo;

2.1.4 Arrays o tablas


Este apartado se ve en el tema 3

2.1.5 Curiosidades de las variables en PHP


A diferencia de otros lenguajes, PHP posee una gran flexibilidad a la hora de operar con
variables. En efecto, cuando definimos una variable asignndole un valor, el ordenador
le atribuye un tipo. Si por ejemplo definimos una variable entre comillas, la variable
ser considerada de tipo cadena:

pgina 6

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

$variable="12"; //esto es una cadena

Sin embargo si pedimos en nuestro script(cdigo PHP) realizar una operacin


matemtica con esta variable, no obtendremos un mensaje de error sino que la variable
cadena ser asimilada a numrica:
Ejemplo:
<?
$cadena="5"; //esto es una cadena
$entero=3; //esto es un entero
echo El resultado es :$cadena+$entero
?>

Resultado:
El resultado es: 8

Este script(cdigo PHP) dar como resultado "8". La variable cadena ha sido
asimilada en entero (aunque su tipo sigue siendo cadena) para poder realizar la
operacin matemtica. Del mismo modo, podemos operar entre variables tipo
entero y real. No debemos preocuparnos de nada, PHP se encarga durante la
ejecucin de interpretar el tipo de variable necesario para el buen funcionamiento
del programa.

2.2 Variables por referencia


En PHP tambin podemos asignar variables por referencia. En ese caso no se les asigna
un valor, sino otra variable, de tal modo que las dos variables comparten espacio en
memoria para el mismo dato.
La notacin para asignar por referencia es colocar un "&" antes del nombre de la
variable.
Ejemplo:
<?php
$var1 = 'Pedro'; // Asigna el valor 'Pedro'a $var1
$var2 = &$var1; // Referencia $var1 va $var2.
$var2 = "Mi nombre es $var2"; // Modifica $var1 y como var2 esta referenciando a var1
tambin se modifica var1
echo $var1; .
echo $var2;
?>

pgina 7

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

Esto dar como resultado la visualizacin dos veces del string "Mi nombre es Pedro".
Algo como:
Resultado
Mi nombre es PedroMi nombre es Pedro

2.3 Variable predefinidas


PHP proporciona una gran cantidad de variables predefinidas a cualquier script(cdigo
PHP) que se ejecute. De todas formas, muchas de esas variables no pueden estar
completamente documentadas ya que dependen de sobre qu servidor(En nuestro caso
Apache) se est ejecutando, la versin y configuracin de dicho servidor, y otros
factores. Algunas de estas variables no estarn disponibles cuando se ejecute PHP desde
la lnea de comandos.
A pesar de estos factores, aqu tenemos una lista de variables predefinidas disponibles
en una instalacin por defecto de PHP corriendo como modulo de un Apache(El
servidor que nosotros estamos utilizando en este curso) con su configuracin tambin
por defecto.

2.3.1 Variables de Apache


Muchas de las definiciones dadas a continuacin de las diferentes variables de Apache,
se iran comprendiendo mejor a lo largo de este curso
GATEWAY_INTERFACE
Qu revisin de la especificacin CGI est usando el servidor; por ejemplo CGI/1.1.
SERVER_NAME
El nombre del equipo servidor en el que se est ejecutando el script. Si el script se est
ejecutando en un servidor virtual, este ser el valor definido para dicho servidor virtual.
SERVER_SOFTWARE
Una cadena de identificacin del servidor, que aparece en las cabeceras al responderse a
las peticiones.
SERVER_PROTOCOL
Nombre y revisin del protocolo a travs del que se solicit la pgina; p.ej. HTTP/1.0;
REQUEST_METHOD
Qu mtodo de peticin se us para acceder a la pgina; p.ej. GET, HEAD, POST,
PUT.

pgina 8

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

QUERY_STRING
La cadena de la peticin, si la hubo, mediante la que se accedi a la pgina.
DOCUMENT_ROOT
El directorio raz del documento bajo el que se ejecuta el script, tal y como est definido
en el fichero de
configuracin del servidor.
HTTP_ACCEPT
Los contenidos de la cabecera Accept: de la peticin actual, si hay alguna.
HTTP_ACCEPT_CHARSET
Los contenidos de la cabecera Accept-Charset: de la peticin actual, si hay alguna. Por
ejemplo:
iso-8859-1,*,utf-8.
HTTP_ENCODING
Los contenidos de la cabecera
ejemplo: gzip.

Accept-Encoding:

de la peticin actual, si la hay. Por

Accept-Language:

de la peticin actual, si hay alguna.

HTTP_ACCEPT_LANGUAGE
Los contenidos de la cabecera
Por ejemplo: en.
HTTP_CONNECTION
Los contenidos de la cabecera
ejemplo: Keep-Alive. 96

Connection:

de la peticin actual, si hay alguna. Por

HTTP_HOST
Los contenidos de la cabecera Host: de la peticin actual, si hay alguna.
HTTP_REFERER
La direccin de la pgina (si la hay) desde la que el navegador salt a la pgina actual.
Esto lo establece el navegador
del usuario; no todos los navegadores lo hacen.
HTTP_USER_AGENT
Los contenidos de la cabecera User_Agent: de la peticin actual, si hay alguna. Indica el
navegador que se est
utilizando para ver la pgina actual; p.ej.
i586). Entre otras cosas,

Mozilla/4.5 [en] (X11; U; Linux 2.2.9

se puede usar este valor con get_browser() para adaptar la funcionalidad de la pgina a
las posibilidades del

pgina 9

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

navegador del usuario.


REMOTE_ADDR
La direccin IP desde la que el usuario est viendo la pgina actual.
REMOTE_PORT
El puerto que se est utilizando en la mquina del usuario para comunicarse con el
servidor web.
SCRIPT_FILENAME
La va de acceso absoluta del script que se est ejecutando.
SERVER_ADMIN
El valor que se haya dado a la directiva SERVER_ADMIN (en Apache) en el fichero de
configuracin del servidor
web. Si el script se est ejecutando en un servidor virtual, ser el valor definido para
dicho servidor virtual.
SERVER_PORT
El puerto del equipo servidor que est usando el servidor web para la comunicacin.
Para configuraciones por
defecto, ser 80; al usar SSL, por ejemplo, cambiar al puerto que se haya definido
como seguro para HTTP.
SERVER_SIGNATURE
Una cadena que contiene la versin del servidor y el nombre del servidor virtual que es
aadida a las pginas
generadas por el servidor, si est caracterstica est activa.
PATH_TRANSLATED
Va de acceso basada en el sistema de ficheros- (no el directorio raz del documento-)
del script en cuestin, despus
de que el servidor haya hecho la conversin virtual-a-real.
SCRIPT_NAME
Contiene la va de acceso del script actual. Es til para pginas que necesitan apuntar a
s mismas.
REQUEST_URI
La URI(Pagina) que se di para acceder a esta pgina; por ejemplo, /index.html.

pgina 10

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

2.3.2 Variables de PHP


Estas variables son creadas por el propio PHP.
argv
Array de argumentos pasados al script. Cuando el script se ejecuta desde la lnea de
comandos, esto da un acceso, al estilo de C, a los parmetros pasados en lnea de
comandos. Cuando se le llama mediante el mtodo GET, contendr la cadena de la
peticin.
argc
Contiene el nmero de parmetros de la lnea de comandos pasados al script (si se
ejecuta desde la lnea de comandos).
PHP_SELF
El nombre del fichero que contiene el script que se esta ejecutando, relativo al directorio
raz de los documentos. Si PHP se est ejecutando como intrprete de lnea de
comandos, esta variable no est disponible.
HTTP_COOKIE_VARS
Un array asociativo de variables pasadas al script actual mediante cookies HTTP. Slo
est disponible si el seguimiento de variables ha sido activado mediante la directiva de
configuracin track_vars o la directiva
<?php_track_vars?>.

HTTP_GET_VARS
Un array asociativo de variables pasadas al script actual mediante el mtodo HTTP
GET. Slo est disponible si variable tracking ha sido activado mediante la directiva
de configuracin track_vars o la directiva
<?php_track_vars?>.

HTTP_POST_VARS
Un array asociativo de variables pasadas al script actual mediante el mtodo HTTP
POST. Slo est disponible si variable tracking ha sido activado mediante la directiva
de configuracin track_vars o la directiva
<?php_track_vars?>.

pgina 11

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

3 Constantes
Las constantes son variables especiales. Una constante es una variable, pero fija, es
decir, es na variable que no se va modificar en nuestro script (Codigo PHP).
Por Ejemplo, si nuestra pagina web calcula datos matematicos, las cuales utilizan
mucho el numero PI, por que no tener este valor en una variable, pero no en una
variable comun si no en una fija, esto es lo que recibe el nombre de Constante
Para definir una constante se utiliza la instruccin define de la forma:
define(PI,3.14151692);
Luego las constantes pueden usarse como variables tradicionales ($PI) con la salvedad
de que no se les puede asignar un valor.

4 Operadores
4.1 Operadores Aritmticos
$a + $b Suma
$a - $b Resta
$a * $b Multiplicacin
$a / $b &ss=codigoenlinea>$a / $b Divisin
$a % $b Resto de la divisin de $a por $b
$a++
Incrementa en 1 a $a
$a-Resta 1 a $a

4.2 Operadores de Cadenas


El nico operador de cadenas que existen es el de concatenacin, el punto. Pero no os
asustis, PHP dispone de toda una batera de funciones que os permitirn trabajar
cmodamente con las cadenas.
$a = "Hola";
$b = $a . "Mundo"; // Ahora $b contiene "Hola Mundo"

En este punto hay que hacer una distincin, la interpretacin que hace PHP de las
simples y dobles comillas. En el segundo caso PHP interpretar el contenido de la
cadena.
$a = "Mundo";
echo = 'Hola $a'; //Esto escribir "Hola $a"
echo = "Hola $a"; //Esto escribir "Hola Mundo&q; //Esto escribir "Hola Mundo"

pgina 12

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

4.3 Operadores de Comparacin


$a < $b
$a > $b
$a <= $b
$a >= $b
$a == $b
$a != $b

$a menor que $b
$a mayor que $b
$a menor o igual que $b
$a mayor o igual que $b
$a igual que $b
$a distinto que $b

4.4 Operadores Lgicos


$a AND $b Verdadero si ambos son verdadero
$a && $b Verdadero si ambos son verdadero
$a OR $b Verdadero si alguno de los dos es verdadero
$a !! $b Verdadero si alguno de los dos es verdadero
$a XOR $b Verdadero si slo uno de los dos es verdadero
!$a
Verdadero si $a es falso, y recprocamente

4.5 Operadores de asignacin


$a = $b
$a += $b
$a -= $b
$a *= $b
$a /= $b
$a .= $b

Asigna a $a el contenido de $b
Le suma a $b a $a
Le resta a $b a $a
Multiplica $a por $b y lo asigna a $a
Divide $a por $b y lo asigna a $a
Aade la cadena $b a la cadena $a

5 PHPInfo
Php Info es una funcin muy til que me proporciona PHP para ver todo la informacin
tanto del servidor, como de php, como de MySql, etc.
Para utilizarla es tan sencillo como crear un pgina PHP que contenga las siguientes
lineas.
<?php
phpinfo();
?>

pgina 13

Creacin de paginas web con PHP y MySql

Tema 4. Variables y operadores

pgina 14

Вам также может понравиться