Variables PHP


A veces es conveniente tener nombres de variables variables. Dicho de otro modo, son nombres de variables que se pueden definir y usar dinámicamente. Una variable normal se establece con una sentencia como:
<?php
$a 
'hola';?>
Una variable variable toma el valor de una variable y lo trata como el nombre de una variable. En el ejemplo anterior, hola, se puede usar como el nombre de una variable utilizando dos signos de dólar. Es decir:
<?php$$a 'mundo';?>
En este momento se han definido y almacenado dos variables en el árbol de símbolos de PHP: $a, que contiene "hola", y $hola, que contiene "mundo". Es más, esta sentencia:
<?phpecho "$a ${$a}";?>
produce el mismo resultado que:
<?phpecho "$a $hola";?>
esto quiere decir que ambas producen el resultado: hola mundo.
Para usar variables variables con arrays hay que resolver un problema de ambigüedad. Si se escribe $$a[1], el intérprete necesita saber si nos referimos a utilizar $a[1] como una variable, o si se pretendía utilizar $$acomo variable y el índice [1] como índice de dicha variable. La sintaxis para resolver esta ambigüedad es: ${$a[1]} para el primer caso y ${$a}[1] para el segundo.
También se puede acceder a las propiedades de una clase usando el nombre de propiedad variable. Este será resuelto dentro del ámbito del cual se hizo la llamada. Por ejemplo, en la expresión $foo->$bar, se buscará $bar en el ámibto local y se empleará su valor será como el nombre de la propiedad de $foo. Esto también es cierto si $bar es un acceso a un array.

COMPARTIR

Publicaciones Relacionadas

Anterior
Siguiente »