Funções para Array
PHP Manual

list

(PHP 4, PHP 5)

listCria variáveis como se fossem arrays

Descrição

void list ( mixed $varname [, mixed $... ] )

Assim como array(), não é exatamente uma função, e sim uma construção da própria linguagem. list() é usada para criar uma lista de variáveis em apenas uma operação.

Parâmetros

varname

A variável.

Valor Retornado

Não há valor retornado.

Exemplos

Exemplo #1 Exemplo da list()

<?php

$info 
= array('Café''marrom''cafeína');

// Listando todas as variáveis
list($bebida$cor$substancia) = $info;
echo 
"$bebida é $cor e $substancia o faz especial.\n";

// Listando apenas alguns deles
list($bebida, , $substancia) = $info;
echo 
"$bebida tem $substancia.\n";

// Ou ignoramos os primeiros valores para conseguir apenas o último 
list( , , $substancia) = $info;
echo 
"I need $substancia!\n";

// list() não funciona com strings
list($bar) = "abcde";
var_dump($bar); // NULL
?>

Exemplo #2 Exemplo da list()

<table>
 <tr>
  <th>Lista de empregados</th>
  <th>Salário</th>
 </tr>

<?php

$result 
mysql_query ("SELECT id, nome, salario FROM empregados"$conn);
while (list (
$id$nome$salario) = mysql_fetch_row ($result)) {
     echo 
" <tr>\n" .
           
"  <td><a href=\"info.php?id=$id\">$nome</a></td>\n" .
           
"  <td>$salario</td>\n" .
            
" </tr>\n";
}

?>

</table>

Exemplo #3 Usando list() de forma aninhada

<?php

list($a, list($b$c)) = array(1, array(23));

var_dump($a$b$c);

?>
int(1)
int(2)
int(3)

Exemplo #4 Usando list() com índices de array

<?php

$info 
= array('café''marrom''cafeína');

list(
$a[0], $a[1], $a[2]) = $info;

var_dump($a);

?>

O retorno desse script é o seguinte (note a ordem dos elementos em comparação com o array original):

 
array(3) {
  [2]=>
  string(8) "cafeína"
  [1]=>
  string(5) "marrom"
  [0]=>
  string(6) "café"
}

Notas

Aviso

A função list() assinala os valores começando pelos parâmetros da direita. Se você está usando variáveis normais, então não precisa se preocupar com esse detalhe. Mas se você está usando arrays com índices você normalmente iria esperar que a ordem dos índices no array fosse da esquerda para a direita, mas não é isso que acontece. O índice é criado na ordem reversa.

Nota:

list() funciona somente com arrays numéricos e espera que esses índices comecem de 0 (zero).

Veja Também


Funções para Array
PHP Manual