Una variable en PHP es una ubicación de memoria con nombre que contiene datos que pertenecen a uno de los tipos de datos.

  • PHP utiliza la convención de anteponer un signo de dólar ($) al nombre de una variable.
  • Los nombres de las variables en PHP distinguen entre mayúsculas y minúsculas.
  • Los nombres de las variables siguen las mismas reglas que otras etiquetas en PHP. Un nombre de variable válido comienza con una letra o un guión bajo, seguido de cualquier número de letras, números o caracteres de subrayado.
  • Según la convención de nomenclatura, «$name», «$rate_of_int», «$Age», «$mark 1» son ejemplos de nombres de variables válidos en PHP.
  • Nombres de variables no válidos: «name» (no tiene el prefijo $), «$rate of int» (no se permiten espacios en blanco), «$Age#1» (carácter # no válido), «$11» (nombre que no comienza con alfabeto).

Las variables se asignan con el operador «=», con la variable a la izquierda y la expresión a evaluar a la derecha.

No es necesario especificar el tipo de una variable

PHP es un lenguaje de tipado dinámico. No es necesario especificar el tipo de una variable. Por el contrario, el tipo de una variable se decide por el valor que se le asigna. El valor de una variable es el valor de su asignación más reciente.

Echa un vistazo al siguiente ejemplo:

<?php
   $x = 10;
   echo "Data type of x: " . gettype($x) . "\n";

   $x = 10.55;
   echo "Data type of x now: " . gettype($x) . "";
?>

Producirá el siguiente resultado:

Data type of x: integer
Data type of x now: double

Conversión automática de tipos de variables

PHP hace un buen trabajo al convertir automáticamente los tipos de uno a otro cuando es necesario. En el siguiente código, PHP convierte una variable de cadena «y» en «int» para realizar la suma con otra variable entera e imprimir 30 como resultado.

Echa un vistazo al siguiente ejemplo:

<?php
   $x = 10;
   $y = "20";

   echo "x + y is: ", $x+$y;
?>

Producirá el siguiente resultado:

x + y is: 30

Las variables se asignan por valor

En PHP, las variables siempre se asignan por valor. Si se asigna una expresión a una variable, el valor de la expresión original se copia en ella. Si el valor de cualquiera de las variables de la expresión cambia después de la asignación, no tiene ningún efecto en el valor asignado.

<?php
   $x = 10;
   $y = 20;
   $z = $x+$y;
   echo "(before) z = ". $z . "\n";

   $y=5;
   echo "(after) z = ". $z . "";
?>

Producirá el siguiente resultado:

(before) z = 30
(after) z = 30

Asignación de valores a variables PHP por referencia

También puede utilizar la forma de asignar valores a las variables PHP por referencia. En este caso, la nueva variable simplemente hace referencia o se convierte en un alias o apunta a la variable original. Los cambios en la nueva variable afectan a la original y viceversa.

Para asignar por referencia, simplemente anteponga un signo & (&) al principio de la variable que se está asignando (la variable fuente).

Echa un vistazo al siguiente ejemplo:

<?php
   $x = 10;
   $y = &$x;
   $z = $x+$y;
   echo "x=". $x . " y=" . $y . " z = ". $z . "\n";

   $y=20;
   $z = $x+$y;
   echo "x=". $x . " y=" . $y . " z = ". $z . "";
?>

Producirá el siguiente resultado:

x=10 y=10 z = 20
x=20 y=20 z = 40

Ámbito variable

El alcance se puede definir como el rango de disponibilidad que tiene una variable para el programa en el que se declara. Las variables PHP pueden ser uno de los cuatro tipos de ámbito:

Nomenclatura de variables

Las reglas para nombrar una variable son:

  • Los nombres de las variables deben comenzar con una letra o un carácter de subrayado.
  • El nombre de una variable puede constar de números, letras, guiones bajos, pero no puede usar caracteres como + , – , % , ( , ) . & , etc

No hay límite de tamaño para las variables.