Variables De Variables
Enviado por Blace57 • 25 de Abril de 2013 • 407 Palabras (2 Páginas) • 415 Visitas
Variables variables
Variables variables es una forma de acceder a las variables usando a la vez otras variables. Una variable variable toma el valor de una variable y lo trata como el nombre de una variable permitiéndole acceder a los contenidos de una variable sin saber su nombre directamente - es como refiriéndose indirectamente a una variable.
Sintaxis
<Php?
$ bar = 10;
$ foo = "bar”
?>
Hay dos maneras en que puede hacer salir el valor de $ bar aquí. Podemos usar print $ bar, que es muy sencillo, o podemos aprovechar el concepto de variables variables y usar print $ $ foo;. Así es - dos signos de dólar.
Mediante el uso de $ $ foo, PHP buscará el contenido de $ foo, convertirlo en una cadena, a continuación, busque la variable del mismo nombre, y devolver su valor. En el ejemplo anterior, $ foo contiene la cadena "bar", por lo que PHP buscará la variable llamada $ bar y salida de su valor - en este caso, 10.
Para verlo más claro, este ejemplo:
$nombre = 'mivariable';
$mivariable = 'Hola Mundo';
echo $$nombre; // Imprime Hola Mundo
En este código, si nos fijamos en la última línea, "echo $$nombre;" es en realidad lo mismo que "echo $mivariable"; ya que la variable "$nombre" contiene "mivariable".
Además, PHP ofrece otro método para realizar este tipo de acceso, sería así:
echo ${$nombre}; // Imprime Hola Mundo
Vamos a ver un ejemplo un poco más útil:
$var1 = "Hola ";
$var2 = "Mundo";
for ($i = 1;$i<=2;$i++) {
echo ${"var".$i};
}
Este código imprime "Hola Mundo". Evidentemente este código podría hacerse mucho mejor utilizando arrays, pero si por alguna razón no podemos usar arrays, siempre podremos emplear este método.
Variables de sesión ($_SESSION)
Es otro método para hacer que variables estén disponibles en múltiples páginas sin tener que pasarlas como parámetro. A diferencia de las cookies, las variables de sesión se almacenan en el servidor y tienen un tiempo limitado de existencia.
La primera página es un formulario HTML puro:
<html>
<head>
<title>Problema</title>
</head>
<body>
<form action="pagina2.php" method="post">
Ingrese nombre de usuario:
<input type="text" name="campousuario"><br>
Ingrese clave:
<input type="password" name="campoclave"><br>
<input type="submit" value="confirmar">
</form>
</body>
</html>
...