Sep
17
2010
list()

list

(PHP 3, PHP 4, PHP 5 )

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

Описание

void list ( mixed varname, mixed ... )

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

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


<?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().

 
 
 
Комментарии
Добавить новый Поиск
Оставить комментарий
Имя:
Email:
 
Веб-сайт:
Тема:
UBB-Код:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Пожалуйста, введите проверочный код, который Вы видите на картинке.
Powered by !JoomlaComment 3.26

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Кто онлайн

Сейчас 38 гостей онлайн