Установи Linux! Стань свободным!
Онлайн всего: 10 | Посетители: 8 | Боты: 2
Дата 22.04.2026 Время: 02:54
Ваш IP: 216.73.217.29
Загрузка сервера: 0.31
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 (не будет опубликован)
Имя
Комментарий
Введите число с картинки:     
Случайные статьи

   INTEL LINUX GRAPHICS INSTALLER ДЛЯ UBUNTU 13.10
Intel Linux Graphics Installer для Ubuntu 13.10 — инструмент, разработанный Intel и позволяющий пользователям легко обновиться до свежих графических драйверов от Intel. Свежий Intel Graphics Installer 1.0.3 для Linux получил свежий стек latest Intel Graphics 2013Q3 Stack, получивший поддержку процессора Solid Intel Celeron N2810 с поддержкой Intel HD Graphics, включенный по умолчанию SNA, а также улучшения в потреблении питания для процессоров четвертого поколения Intel Core с…
  2017-08-04 14:56:28 | Категория: Драйвера
   ПЕРЕХОД С WINDOWS НА UBUNTU (ДЕЛАЕМ UBUNTU LIVE USB)
Для перехода с Windows на Linux Ubuntu необходим Ubuntu Live CD или Ubuntu Live USB. Но не все пользователи Windows задумывавшиеся о переходе на Ubuntu могут решится пойти на столь радикальный шаг. Причин тому много, например пользователи Windows просто не представляют что такое Ubuntu.Для ознакомления с Ubuntu можно конечно воспользоваться программой Wubi которая создает виртуальный жесткий диск и устанавливает на него Ubuntu. Но мой опыт с данной…
  2017-08-03 21:34:44 | Категория: Система
   SMARTMONTOOLS — КОНТРОЛЬ И НАБЛЮДАЕТ ЗА СИСТЕМНЫМИ НАКОПИТЕЛЯМИ С ПОМОЩЬЮ S.M.A.R.T.
smartmontools — контроль и наблюдает за системными накопителями с помощью S.M.A.R.T.   Пакет smartmontools состоит из двух утилит (smartctl и smartd), которые контролируют и следят за системными накопителями используя самопроверку, анализ и систему технологического отчёта (S.M.A.R.T.), встроенную в большинство современных ATA и SCSI жёстких дисков. Этот пакет основан на коде пакета smartsuite и включает поддержку ATA/ATAPI-5 дисков. Он…
  2017-08-09 09:17:20 | Категория: Система
   Установка ядра Linux в Ubuntu
При желании Вы можете установить ядро Linux, выбрав из репозитория http://kernel.ubuntu.com/~kernel-ppa/mainline/ самое новое для своей версии Ubuntu. Например для Ubuntu 13.10 Saucy Salamander имеются ядра 3,9…3,12. В названии ядра присутствует кодовое имя версии Ubuntu — v3.12-saucy/.   Каждый релиз Ubuntu имеет собственную версию ядра. LTS-релизы начиная с 10.04 получили возможность обновить ядро до версий, входящих в состав более…
  2017-08-04 10:20:51 | Категория: Система
   Unity Tweak Tool
Unity Tweak Tool — это программа для настройки рабочей среды Unity в Ubuntu. Помогает улучшить внешний вид и шире раскрыть возможности оболочки.   Unity Tweak Tool есть в Центре приложений Ubuntu, откуда вы можете установить её или выполните следующую команду в терминале: sudo apt-get install…
  2017-08-06 00:13:24 | Категория: Ubuntu

Вверх