Установи Linux! Стань свободным!
Онлайн всего: 2 | Посетители: 0 | Боты: 2
Дата 19.05.2026 Время: 00:04
Ваш IP: 216.73.217.37
Загрузка сервера: 0.84
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 (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   ВИДЕОРЕДАКТОР PITIVI — СОЗДАНИЕ И РЕДАКТИРОВАНИЕ СОБСТВЕННЫХ ВИДЕОРОЛИКОВ
Видеоредактор Pitivi — создание и редактирование собственных видеороликов Pitivi — достаточно простой и понятный нелинейный редактор видео для Linux Ubuntu. Видеоредактор имеет базовый набор инструментов: разрезание склеивание изменение размеров видео работа над слоями наложение звука экспорт в разные видео форматы программа содержит множество видео и аудио эффектов Программа pitivi доступна в…
  2017-08-07 20:13:35 | Категория: Мультимедиа
   SUNFLOWER — ДВУХПАНЕЛЬНЫЙ ФАЙЛОВЫЙ МЕНЕДЖЕР ДЛЯ LINUX И ДРУГИХ UNIX-ПОДОБНЫХ ОПЕРАЦИОННЫХ СИСТЕМ
Sunflower — двух панельный файловый менеджер для Linux и других UNIX-подобных операционных систем. Программа написана на языке программирования Python. Sunflower является свободным программным обеспечением и распространяется под лицензией GNU GPL. Функции Многовкладочный интерфейс. Встроенный эмулятор терминала. Настройка сочетаний клавиш. Drag-and-drop. Собственные плагины. Отличительной особенностью Sunflower является…
  2017-08-11 08:31:38 | Категория: Система
   XSensors — вывод информации с датчиков на материнской плате
sensors — программа, использующая libsensors для отображения в цифровом виде такой системной информации, как: температура системы, напряжения и скорости вращений вентиляторов. Программа XSensors доступна в официальном репозитории Ubuntu, поэтому ее можно установить через центр приложений Ubuntu или воспользоваться терминалом: sudo apt-get install…
  2017-08-08 18:14:45 | Категория: Система
   NEMO — ФАЙЛОВЫЙ МЕНЕДЖЕР РАЗРАБОТАННЫЙ КОМАНДОЙ LINUX MINT ДЛЯ LINUX UBUNTU
Nemo — файловый менеджер разработанный командой Linux Mint. Файловый менеджер Nemo обладает огромным набором функций которые не доступны в Nautilus, такие как например двух панельный режим, открывание папки как администратор, открыть папку в терминале и многие другие полезные функции. Установка файлового менеджера Nemo в Ubuntu (14.04): Установить файловый менеджер Nemo через Центр приложений Ubuntu, но для установки…
  2017-08-09 10:09:16 | Категория: Система
   VIRTUALBOX ДЛЯ LINUX
VirtualBox — бесплатная программа для запуска операционных систем Windows, Linux, MacOS X, DOS и некоторых других из под другой операционной системы. Например, используя VirtualBox, вы можете работать в Ubuntu и запустить Windows XP прямо из Ubuntu. Рассмотрим установку VirtualBox для Linux Откройте официальную страницу загрузки программы —https://www.virtualbox.org/wiki/Linux_Downloads Скачайте пакет deb для своей версии Linux, например…
  2017-08-02 00:34:07 | Категория: Система

Вверх