list

(PHP 3, PHP 4, PHP 5)

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

Описание

void list ( mixed varname, mixed ... )

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

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

Пример 1. Примеры использования list()
$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()
$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>";
}

Внимание

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

Пример 3. Использование list() с индексами массивов
$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(), explode(), extract().

Все функции операторы
Все функции array
Описание на ru2.php.net
Описание на php.ru