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

   Jardinains2 — забавная и веселая игра в стиле арканоид
Jardinains2 — забавная и веселая игра в стиле арканоид. Игра мало чем отличается от классического арканоида, но в ней есть озорные гномы, которые мешают игроку разбивать блоки, кидая вниз горшки с цветами, гаечные ключи, кости и т.д. Собирайте бонусы — они помогут вам быстрее закончить уровень. В игре есть несколько уровней сложности, так же игра насчитывает около 50 уровней. Имеется встроенный…
  2017-08-12 09:19:55 | Категория: Игры
   Blender — свободный пакет для создания трёхмерной компьютерной графики
Blender — свободный пакет для создания трёхмерной компьютерной графики, включающий в себя средства моделирования, анимации, рендеринга, постобработки видео, а также создания интерактивных игр.   Характерной особенностью пакета Blender является его небольшой размер. Установленный пакет занимает от 30 до 45 МБ. В базовую поставку не входят развёрнутая документация и большое количество демонстрационных…
  2017-08-04 07:39:32 | Категория: Графика
   Calligra Suite - пакет офисных приложений
Calligra Suite — это пакет офисных приложений, входящий в состав проекта KDE. Изначально создавался как форк пакета KOffice, разрабатывавшегося ранее. Все компоненты пакета опубликованы под свободными и открытыми лицензиями. Части пакета: Часть Описание Words Текстовый процессор, ориентированный на стили (вместо конкретных атрибутов шрифта) и врезки (вместо страниц) Sheets Табличный процессор,…
  2017-09-20 09:47:14 | Категория: Офис
   MPV — КОНСОЛЬНЫЙ ВИДЕОПРОИГРЫВАТЕЛЬ
MPV это проигрыватель фильмов на основе MPlayer и Mplayer2. Он поддерживает широкий спектр видео форматов, аудио и видео кодеков и типов субтитров. Проигрыватель MPV не имеет графического интерфейса, управляется он с клавиатуры. Управление производится клавишами: 1-2 контрастность 3-4 яркость 7-8 насыщенность 9-0 громкость стрелки право-влево — перемотка Пробел — пауза s — сделать скриншот f —…
  2017-08-08 18:13:39 | Категория: Мультимедиа
   TESSERACT — ШУТЕР ОТ ПЕРВОГО ЛИЦА
Tesseract — является шутером от первого лица, геймплей игры представляет собой несколько режимов игры «Instagib Deathmatch» и «Сapture-the-flag», а также кооперативное редактирование и создание карты в игре. Движок игры Tesseract является форком движка Cube 2: Sauerbraten. Особенностью данного движка является создание карт с использованием современного динамического метода визуализации, что предоставляет мгновенный…
  2017-08-10 21:16:51 | Категория: Игры

Вверх