En PHP, también es posible crear las llamadas variables variables. Es una variable cuyo nombre está contenido en otra variable.
1 2 3 4 5 |
$name = 'foo'; $$name = 'bar'; echo $foo; // Muestra 'bar' |
Como se puede ver, en este ejemplo, se empieza por crear una variable que contiene la cadena foo. A continuación, utilizamos la sintaxis especial $$ para indicar que queremos que el intérprete utilice el contenido de $nombre para hacer referencia a una nueva variable, creando así la nueva variable $foo, que luego se imprime normalmente.
Debido a la disponibilidad de variables variables, es de hecho posible crear variables cuyos identificadores no siguen las reglas normales de los identificadores. Esto también es posible definiendo el nombre entre llaves.
1 2 3 4 5 6 7 8 |
$name = '123'; /* 123 es el nombre de la variable lo cual normalmente sería inválido */ $$name = '456'; // Se le asigna un valor echo ${'123'}; // Utilizando llaves podemos acceder a nuestra variable |
Las variables variables son una herramienta muy poderosa, y se deben utilizar con sumo cuidado, no sólo porque pueden hacer que su código sea difícil de entender y documentar, también porque su uso inadecuado puede dar lugar a algunos problemas de seguridad significativos.
La técnica de las variables variables puede también ser usada para guardar los nombres de funciones en variables
1 2 3 4 5 6 |
function miFuncion() { echo 'Entro a mi funcion'; } $f = 'miFuncion'; $f(); //Ejecutará miFuncion(); |
¿Te gustó este artículo?
Si te gustó este artículo, te ha servido o aprendiste algo nuevo; compártelo en tus redes sociales o invítame un cafe.