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

   VLC — МУЛЬТИМЕДИЙНЫЙ ПРОИГРЫВАТЕЛЬ ДЛЯ LINUX
VLC — это бесплатный, открытый, кросс-платформенный мультимедиа проигрыватель и фреймворк, который воспроизводит большинство мультимедийных файлов, а также DVD, Audio CD, VCD и различные протоколы потокового вещания. Простой, быстрый и мощный мультимедиа проигрыватель. Играет всё: файлы, диски, веб-камеры, устройства и сетевые потоки. Играет большинство кодеков без необходимости устанавливать кодек-паки:MPEG-2,…
  2017-07-31 20:16:21 | Категория: Мультимедиа
   Tilda - эмулятор терминала
Tilda — это эмулятор терминала, подобный gnome-terminal (GNOME) или Konsole (KDE), с той разницей, что он раскрывается из-за края экрана при нажатии заданной «горячей клавиши». Это похоже на встроенные консоли в таких играх, как Quake или Half-live. Tilda обладает широкими возможностями настройки через графический мастер настроек. Программу можно установить через "Центр приложений Ubuntu" или выполнив команду в терминале: sudo…
  2017-09-04 10:31:48 | Категория: Система
   Монтирование iso-образа при помощи Nautilus
Монтировать iso-образ в Nautilus достаточно легко, для этого найдите образ который необходимо монтировать, кликните на него правой кнопкой мыши и выберите вкладку «Открыть в программе», далее «Подключение образов дисков».     В левой панели Nautilus в пункте «Устройства» появится виртуальный диск.     Для размонтирования достаточно кликнуть правой кнопкой мыши на…
  2017-08-04 14:36:32 | Категория: Ubuntu
   Qt Creator
Qt Creator — кроссплатформенная свободная IDE для разработки на С, С++ и QML. Разработана Trolltech (Digia) для работы с фреймворком Qt. Включает в себя графический интерфейс отладчика и визуальные средства разработки интерфейса как с использованием QtWidgets, так и QML. Поддерживаемые компиляторы: GCC, Clang, MinGW, MSVC, Linux ICC, GCCE, RVCT, WINSCW. Основная задача Qt Creator — упростить разработку приложения с помощью фреймворка Qt на…
  2017-08-28 09:40:18 | Категория: Разное
   РИППЕР CD ASUNDER — ПРИЛОЖЕНИЕ ДЛЯ СОХРАНЕНИЯ ТРЕКОВ С АУДИО-CD В ФОРМАТЫ WAV, MP3, OGG, FLAC, И/ИЛИ WAVPACK
Asunder — приложение с графическим интерфейсом для захвата, перекодирования и сохранения звуковых дорожек с аудио-CD. Основные возможности: поддержка аудиофайлов WAV, MP3, Ogg Vorbis, FLAC и Wavpack использование CDDB для наименования дорожек и создания тегов кодирование в несколько форматов в одном сеанс создание списков воспроизведения M3U могут быть различные исполнители для каждой дорожки не требует какой-то…
  2017-08-09 07:41:50 | Категория: Мультимедиа

Вверх