[Image] Понедельник, 18.11.2024, 11:51 [Image]
SEO, технологии, игры, IT новости
[Image] Главная Регистрация Вход [Image]
[Image] Приветствую Вас, Гость · RSS [Image]
Меню сайта

Форма входа
 Блог
Главная » 2010 » Декабрь » 18 » Перемещение по массивам
22:46
Перемещение по массивам
Если у вас была возможность поработать с массивами, вы, вероятно, быстро поняли, что должен существовать хороший способ итерации по всем парам ключ/значение, содержащимся в массиве. Частичным решением может быть цикл for (), который можно использовать в сочетании с функцией count () (эта функция возвращает количество элементов массива) для прохождения по всем элементам, индексированным целочисленными индексами, как показано в листинге 2.7.
Листинг 2.7. Использование count () для итерации по массиву
$myarray = array('php', 'is', 'cool');
for($i » 0; $i < count($myarray); $i++) {
•echo "Значение с индексом $i равно: ($myarray[$i]}
\n";
Несмотря на свою эффективность, приведенный код не будет работать с массивами, использующими строки в качестве индексов (или массивами, у которых целые ключи не последовательны). Правильный способ итерации по элементам массива предполагает использование оператора foreach ():
foreach( as [$key_var »>] $value_var) {
... код для работы с каждым индивидуальным элементом массива ...
Здесь <аггау> представляет массив, по которому выполняется итерация, а каждая пара $key_var/$value_var указывает индивидуальную пару ключ/значение в текущей итерации. А вот как работает оператор foreach (): при вызове foreach (•) выполняет цикл, проходя по каждому элементу внутри <аггау>, сохраняя значение текущего элемента в переменной $value_var, а необязательное значение ключа — в $key_var. Эти переменные затем можно использовать внутри конструкции foreach (). Обратите внимание, что, несмотря на то, что пара $key_var/$value_var содержит текущее значение элемента массива, ее модификация не оказывает влияния на исходный массив.
Чтобы изменить содержимое текущего элемента, можно обратиться к значению $value_var в операторе foreach () по ссылке (то есть, &$value_var).
Давайте обратимся к предыдущему примеру, использующему функцию count () для итерации по массиву, только на этот раз применим оператор foreach (), как показано в листинге 2.8.
Листинг 2.8. Использование foreach () для итерации по массиву
$myarray = array('php', 'is', 'cool');
/* Получить ключ и значение очередного элемента */
foreach($myarray as $key => $val) {
echo "Значение с индексом $key равно: $val
";
/* Извлекаем только значения элементов и игнорируем ключи */
foreach($myarray as $val) {
echo "Значение: $val
";
i ?>
В листинге 2.8 первый оператор foreach () работает идентично соответствующему циклу for () из предыдущего примера. Также отметим, что переменная $кеу не требуется, как показано во втором примере с foreach ().
НА ЗАМЕТКУ
Как и для всех управляющих структур РНР, существуют альтернативы оператору foreach ( ) , как показано ниже:
as [$key_var =>] $val): ?>
<!-- не интерпретируемые данные //—>

Категория: Все о PHP | Просмотров: 1222 | Добавил: witkom8382 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Copyright MyCorp © 2024
Категории
Оптимизация сайта [591]
Создание сайтов [355]
Заработать в интернете [508]
Технологии [46]
Полезное [391]
Услуги и сервисы [317]
Автоблог [105]
Скрипты для Ucoz [39]
Движок на сайт [10]
Все о Joomla и Drupal [20]
Все о PHP [91]
Поиск
Пользовательский поиск
Статистика


Онлайн всего: 2
Гостей: 2
Пользователей: 0
Seo сайт, технологии продвижения, мета теги, оптимизация сайтов, новости сео, Скрипты, Ucoz

Рейтинг@Mail.ru