- PHP - Elementos estructurales - Crear variable a partir de elementos de un array -

La función list( ), crea variables a partir de arrays númericos y extract( ), a partir de array asociativos.

Función list( )
Esta función asigna los elementos de un array a variables individuales. La función aparese a la izquierda del operador de asignación. Los argumentos son una relación de los nombre de las variables, separados por comas.
Las variables creadas, se corresponden con los elementos del array a la derecha del operador de asignación. Si hay menos variables que elementos, se ignoraran los elementos sobrantes.
Ejemplo:

<html>
<head>
<title>Funci&oacute;n list( ) y each( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$colores=array("red","green","blau");
list($x,$y)=$colores;
echo"La funcion list( ) asigna elementos del array a variables: ";
echo'list($x,$y)=$colores' . ".<br/>";
echo"\$x == '$x' y \$y == '$y'.<br/>\n";
$var=array('nombre'=>'Pedro','apellido'=>'Perez','edad'=>'54');
while(list($key,$val)=each($var))
{
            echo"$key=>$val<br/>";
}
reset($var);
?>
</pre>
</font>
</body>
</html>

Función extract( )
Esta función crea variable a partir de un array asociativo.
El nombre de las variables se forma a partir de los índices y los elementos se asignan a ellas.
Cuenta con los argumentos siguientes:

Argumento Descripción
EXTR_IF_EXISTS
Sustituye la variable, solo si existe
EXTR_OVERWRITE
Si hay una colisión, sustituye la variable existente
EXTR_PREFIX_ALL
Asigna prefijos a los nombres de variables
EXTR_PREFIX_IF_EXISTS
Asigna prefijos a nombre de variables, cuyo nombre de variable existen sin prefijo
EXTR_PREFIX_INVALID
Crea nombre de variables con prefijos, cuyos prefijos no son validos
EXTR_PREFIX_SAME
Si hay colisiones, le agrega prefijos al nombre de las variable
EXTR_REFS
Extrae variables como referencias
EXTR_SKIP
Si hay una colisión, no sustitulle la variable existente

Ejemplo:

<html>
<head>
<title>Funci&oacute;n extract( )</title>
</head>
<body bgcolor="#eceaf3">
<font face = "verdana" size='+1'>
<pre>
<?php
$var=array('nombre'=>'Pedro','apellido'=>'Perez','edad'=>'54');
extract($var);
echo "$nombre<br/>" . "$apellido<br/>" . "$edad<br/>";
?>
</pre>
</font>
</body>
</html>


previo
Imprimir..
Ultima actualisación: Tue, 24 ▪ May ▪ 2011
próximo