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

   gThumb
gThumb — свободная компьютерная программа для просмотра, редактирования и упорядочивания (каталогизации) коллекции файлов графический форматов и видеофайлов в Linux и других UNIX-подобных операционных системах. Возможности программы: Импортирование файлов из каталога или фотокамеры с последующей каталогизацией (сортировкой по подпапкам по дате создания снимков). Поиск дубликатов изображений. Просмотр…
  2017-08-04 15:10:10 | Категория: Графика
   REDSHIFT — ПРОГРАММА МЕНЯЮЩАЯ ЦВЕТОВУЮ ТЕМПЕРАТУРУ МОНИТОРА В ЗАВИСИМОСТИ ОТ ВРЕМЕНИ СУТОК
Redshift — программа меняющая цветовую температуру монитора в зависимости от времени суток с учетом местоположения. Для того чтобы глаза меньше уставали при долгой работе на компьютере необходимо скорректировать цветовую температуру монитора в зависимости от времени суток. Программа Redshift позволяет плавно в течении суток менять цветовую температуру монитора, тем самым снимая нагрузку с глаз. Для…
  2017-08-09 10:56:33 | Категория: Разное
   EncryptPad - текстовый редактор для конфиденциальной информации
EncryptPad — текстовый редактор для конфиденциальной информации, который защищает файлы паролями, файлами-ключами или обеими. EncryptPad использует алгоритм симметричного шифрования, и использует наиболее популярный формат OpenPGP RFC 4880. Текстовый редактор полезен для хранения различной информации, доступ к которой ограничен, например для хранения паролей, информации о кредитных картах и др. А так как помимо…
  2017-08-13 10:56:59 | Категория: Офис
   DPKG — УТИЛИТА ДЛЯ УПРАВЛЕНИЯ DEB ПАКЕТАМИ
dpkg — это программное обеспечение, являющееся основой системы управления пакетами в Debian и ряде других операционных систем, основанных на Debian, например Ubuntu. dpkg используется для установки, удаления, и получения информации о deb пакетах.dpkg является довольно низкоуровневой утилитой. Установка deb пакета: dpkg -i имя_файла.deb Например: sudo dpkg -i /home/имя_пользователя/Загрузки/flareget_3.1-36_i386_deb/flareget_3.1-36_i386.deb Удаление…
  2017-08-09 00:06:45 | Категория: Команды терминала
   Установка ядра 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 | Категория: Система

Вверх