PHP – Las variables

Para escribir un programa, necesitamos las variables; las variables son esos espacios de memoria en donde podremos ir dejando los resultados parciales de nuestras operaciones antes de grabarlos en la base de datos, imprimirlos, o enviarlos al navegador del cliente.

Después de revisar la sintaxis, le llega el turno a ver como definimos y trabajamos con variables.

Las variables

Cuando escribáis código PHP, tenéis que recordar que es sensible a mayúsculas y minúsculas, lo que significa que, por ejemplo la variable

$miContador

no es igual a la variable

$micontador

y que todas las sentencias,deben terminar común “;” Estos son los dos errores en los que caeréis mas frecuentemente, por lo que debéis poner un especial cuidado al escribir.

También es conveniente que establezcáis alguna regla para escribir variables y constantes. Respecto a la segundas, ya hay la costumbre de utilizar únicamente mayúsculas, y así son fáciles de reconocer; en cuanto a las variable, veréis que yo siempre empiezo las variables por minúsculas, y si una variable la formo con mas de una palabra junta, utilizo mayúsculas al inicio de cada palabra, por ejemplo, antes he utilizado la variable ” $miContador”

Por si no os habéis fijado, cada vez que tengo que escribir una variable, le antepongo el símbolo del dolar, esa es la forma en que PHP me exige que escriba las variables:

Empiezan por dolar, seguida de letra o guion inferior y a continuación cualquier combinación de números  o letras.

Serian correcta las variables

$miVariable
$_contador
$var1

Por el contrario serian erroneas:

$123Variable  –  Despues del $ no pueden ir numeros
$var/43  – No se pueden utilizar caracteres especiales

Las variables nos van a servir para guardar información, durante la ejecución del programa. pero en PHP, no es necesario que declaremos el tipo de información que vamos a guardar. Las variables serán de un tipo u otro, según el tipo de dato del valor que contengan.

Los tipos de datos

PHP soporta cuatro tipos de datos escalares o básicos, dos tipos compuestos y dos tipos especiales

  • Escalares: integer, float, string y booleanos
  • Compuestos: array y object
  • Especiales: null y resource

Los tipos escalares, son los tipos mas básicos que existen y son indivisibles, ya que solo contienen un valor

Los tipos de datos compuestos pueden contener cualquier numero de valores distintos, pertenecientes tanto a los tipos escalares como a otros tipos compuestos y especiales

Tipo Descripcion Ejemplo……………
Integer Numero entero, sin decimales, se pueden expresar en hexadecimal, octal o decimal $a=123456;
$a=01234- octal;
$a=0xff . hexadecimal;
Float o Double Numero con coma flotante, son los números reales que pueden incorporar una “,”, o un exponente $a=1.55;
$a=1.3e5;
String Cadena de caracteres que se debera encerrar entre comillas dobles o simples, pero la forma de la comilla inicial y final, deberá ser igual. Las comillas sin contenido,se llaman cadena vacía o string null $a=”Las cadenas de texto”;
$a=’Se encierran entre comillas’;
Boolean Un booleano expresa un valor lógico, que puede ser “verdadero” o 1, o “falso” o 0 $a=true;$b=false;
Array Almacena una colección de datos $a=array(‘a’,2,’b’);
Object Conjunto de variables y funciones asociadas $con=new Clase(…);
resource Son variables objects que apuntan a recursos externos $con=new PDO(…);
null representa una variable vacía, corresponde a la palabra “null” que es insensible a mayúsculas y minúsculas $a=null;

Variables predefinidas

Las variables predefinidas son aportadas por el interprete de PHP y están disponibles en cualquier script.

Son también llamadas variables superglobales ya que pueden ser accedidas desde cualquier parte del script.

Nombre Contenido
$GLOBALS Array de todas las variables definidas fuera de funciones
$_SERVER Contiene variables del servidor web o
$_GET Variables del formulario, enviadas por el método GET
$_POST Variables de formulario, enviadas por el método POST
$_COOKIES Cookies correspondiente del navegador conectado
$_FILES Los ficheros enviados al servidor
$_ENV Contiene las variables de de entorno
$_REQUEST Todas las variables de formulario, independientemente del método empleado en el envío
$_SESSION Variables registradas por el modulo de Sesiones

Declaración e inicialización de variables

Aunque no es obligatorio la declaración de variables, si que es conveniente declarar e inicializar la variable antes de su uso; para declarar una variable solo tenemos que indicar su nombre:

$una_variable;

Si queremos declarar mas de una variable en la misma linea, lo podemos hacer con:

$una_variable; $otra_variable; $mas_variables;

Para inicializar una variable, le debemos asignar un valor, ya que en PHP las variables no tienen tipo definido, su tipo quedara fijado, en cada momento, por el valor que contenga

$a=456;
$b="Definiendo string";
$llegada=false;
$salida=NULL;

Comillas y variables

Anteriormente, hemos comentado que para definir una cadena, podamos utilizar la comillas simple o la doble, aunque siempre debíamos acabar con la misma con la que empezáramos, y si bien la afirmación es cierta, el comportamiento no es igual en los dos casos. Si utilizamos comillas simple, todo lo que esta en su interior es tratado como una cadena de texto, mientras que si utilizamos comillas doble, y dentro escribimos algún nombre de variable, se sustituirá por su valor en el momento de utilizarlo.

Si queréis verlo con un ejemplo, aquí tenéis un poco de código:

phpComillas

Luego, podéis probar de sustituir las dobles comillas de la linea 11 por comillas simples y comprobad lo que pasa

 

 Las variables variables

Habrá ocasiones en que nos interesa cambiar el nombre de la variable de forma dinámica, imaginaros que tenemos queremos presentar un letrero en dos idiomas, una forma, podría ser asi:

$mensaje_es="Hola";
$mensaje_en="Hello";
$idioma="es"
$mensaje="mensaje_".$idioma;
print $$mensaje;

Si os fijáis, lo que contiene la variable $mensaje es un literal que en el ejemplo es “mensaje_es” ya que lo hemos compuesto con la palabra “mensaje”, mas el contenido de la variable $idioma, y si hiciéramos

print $mensaje;

lo que nos mandaría a pantalla seria “mensaje_es” que es su valor, entonces si ese es su valor, al anteponer un segundo $, observad que resolviendo la primera variable nos queda “$mensaje_es” que era lo que contenía “$mensaje”, con lo que la orden print muestra el contenido de $mensaje_es.

Ahora os animo a que le echéis un poco de imaginación e intententeis plasmar todo esto en código y vayáis haciendo pruebas, hasta el siguiente articulo, dedicado a los formularios

 

Acerca de Miguel Garcia

Programador, Desarrollador web, Formador en distintas areas de informatica y director de equipos multidisciplinares.
Esta entrada fue publicada en Formacion, PHP y MySQL/MariaDB y etiquetada , , . Guarda el enlace permanente.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.