Установи Linux! Стань свободным!
Онлайн всего: 2 | Посетители: 1 | Боты: 1
Дата 09.06.2026 Время: 03:37
Ваш IP: 216.73.216.24
Загрузка сервера: 0.3
old.ubuntu-desktop.ru - Цикл foreach - PHP    Главная > Веб-программирование > PHP

Цикл foreach

Цикл foreach предоставляет простой способ перебора массивов. Foreach работает только с массивами и объектами, и будет генерировать ошибку при попытке использования с переменными других типов или не инициализированными переменными.

Первый вид синтаксиса цикла foreach:

foreach ($array as $value) {
инструкции
}

Цикл foreach будет перебирать заданный массив — $array . На каждой итерации значение текущего элемента присваивается переменной $value.

Цикл foreach выполняет обход и чтение всех элементов массива, пока не будет достигнут последний.

Пример использования:

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as $i) {
echo $i;
}

12345

Второй вид синтаксиса foreach:

foreach ($array as $key => $value) {
  инструкции
}

Теперь при использовании второго вида синтаксиса на каждой итерации дополнительно присваивается значение текущего ключа переменной $key.

Пример использования:

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as $key => $i) {
echo "[$key] = ", $i, "<br>";
}

[0] = 1
[1] = 2
[2] = 3
[3] = 4
[4] = 5

Так же имеется возможность обхода массива массивов с распаковкой вложенного массива в переменные цикла, передав list() в качестве значения.

Пример:

$masiv = array([1, 2],[3, 4]);
foreach ($masiv as list($a, $b)) {
echo "A: ".$a."; B: ".$b." <br>";

A: 1; B: 2
A: 3; B: 4

Для того, чтобы напрямую изменять элементы массива внутри цикла, переменной $value должен предшествовать знак &. В этом случае значение будет присвоено по ссылке.

$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as &$i) {
$i = $i*10; // массив $i сейчас таков: array(10, 20, 30, 40, 50)
echo $i;
unset($i); // разорвать ссылку на последний элемент
}

1020304050

Ссылка на последний элемент массива остается даже после того, как оператор foreach завершил работу. Поэтому рекомендуется удалять ее с помощью функции unset().

Рейтинг
<< Предыдущая статьяСледующая статья >>
  2017-08-11 12:09:21 | liman28 | Категория: PHP | Просмотров: 57
Комментарии
E-mail (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   СТАВИМ FLASH, JAVA, АУДИО- И ВИДЕО-КОДЕКИ (LINUX)
Изначально из-за закрытости исходного кода кодеков многих из них в Ubuntu нет. Но установка кодеков очень проста и займет немного времени. Для начала обновим список репозиториев и поиск индексов обновленных версий программ, драйверов, ядра и всего прочего: sudo apt-get update Теперь, собственно, установим все доступные обновления: sudo apt-get upgrade Установим flash, java, аудио- и видео-кодеки: sudo apt-get install…
  2017-07-30 21:55:38 | Категория: Мультимедиа
   Notify OSD - всплывающие уведомления
NotifyOSD – разработанная Canonical система вывода визуальных уведомлений для рабочего окружения Unity, представляющие из себя инертные блоки прямоугольной со скруглёнными углами формой; в процессе наведения указателя на уведомление оно становится полупрозрачным.Пакет notify-osd по умолчанию уже предустановлен в дистрибутивах с сессией Ubuntu (Unity). Для установки в других дистрибутивах необходимо ввести команду: sudo…
  2017-08-21 14:45:34 | Категория: Система
   DEVICE DRIVER MANAGER
Device Driver Manager — это графический менеджер приоритарных драйверов, для установки драйверов видеокарт, Wi Fi, и проверка возможности установки ядра PAE 32-битных систем на мультипроцессорах. Приложение поддерживает следующие драйвера: Nvidia, ATI, Intel, VIA и Broadcom. После открытия Device Driver Manager, программа будет сканировать наличие доступных драйверов, после чего предложит доступные драйвера для установки. Установка Device…
  2017-08-04 14:42:31 | Категория: Драйвера
   BINIAX 2 — ЛОГИЧЕСКАЯ ИГРА
Biniax-2 — свободно распространяемая логическая игра, требуется ловить надвигающиеся сверху цветные парные блоки, управляя таким же блоком, меняющим при каждом контакте цвет. Особенности игры: два режима — аркадный (блоки опускаются непрерывно) и тактический (блоки опускаются через каждые два хода) можно играть вдвоём на одном компьютере оконный режим Программа Biniax-2 доступна в официальном…
  2017-08-10 13:02:57 | Категория: Игры
   GSCAN2PDF — ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ДЛЯ ПОМОЩИ В PDF-СКАНИРОВАНИИ
gscan2pdf — графический интерфейс для помощи в PDF-сканировании Всего двух щелчков мышью достаточно для того, чтобы отсканировать несколько страниц и затем сохранить все или только выделенные страницы в файле формата PDF или DjVu, включая, при необходимости, метаданные. gscan2pdf может управлять обычными или оснащёнными автоподатчиками листов (ADF) сканерами с помощью SANE через libsane-perl, scanimage или scanadf и умеет…
  2017-08-09 07:33:17 | Категория: Графика

Вверх