Функции для работы с массивами
PHP Manual

list

(PHP 4, PHP 5)

list Присвоить переменным из списка значения подобно массиву

Описание

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

Подобно array(), это не функция, а языковая конструкция. list() используется для того, чтобы присвоить списку переменных значения за одну операцию.

Замечание: list() работает только с массивами, индексами которых являются числа и нумерация которых начинается с 0.

Пример #1 Примеры использования list()

<?php



$info 
= array('coffee''brown''caffeine');



// Составить список всех переменных

list($drink$color$power) = $info;

echo 
"$drink is $color and $power makes it special.

"
;



// Составить список только некоторых из них

list($drink, , $power) = $info;

echo 
"$drink has $power.

"
;



// Или только третья

list( , , $power) = $info;

echo 
"I need $power!

"
;



?>

Пример #2 Пример использования list()

<table>

 <tr>

  <th>Employee name</th>

  <th>Salary</th>

 </tr>



<?php



$result 
mysql_query("SELECT id, name, salary FROM employees"$conn);

while (list(
$id$name$salary) = mysql_fetch_row($result)) {

    echo 
" <tr>

.

          
"  <td><a href=\"info.php?id=$id\">$name</a></td>

.

          
"  <td>$salary</td>

.

          
" </tr>

"
;

}



?>



</table>

Внимание

list() присваивает значения начиная с крайнего правого параметра. Если вы используете простые переменные, можете не беспокоиться об этом. Но если вы используете индексные массивы, вы можете ожидать, что в результате выполнения функции list() вы получите тот же порядок элементов, что и в исходном массиве: слева направо; однако это не так. Они будут присвоены в обратном порядке.

Пример #3 Использование list() с индексами массивов

<?php



$info 
= array('coffee''brown''caffeine');



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



var_dump($a);



?>

Выведет (сравните порядок исходных элементов с порядком, в в котором они были перезаписаны функцией list()):



array(3) {

  [2]=>

  string(8) "caffeine"

  [1]=>

  string(5) "brown"

  [0]=>

  string(6) "coffee"

}

См. также each(), array() и extract().


Функции для работы с массивами
PHP Manual