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

   gresistor — калькулятор цветового кода резисторов
gresistor Калькулятор цветового кода резисторов   Простая программа для определения номинала и допуска по цветовому коду резисторов.   Программу можно установить при помощи терминала или из репозитория Ubuntu: sudo apt-get install gResistor Необходимо скачать 14,6 kБ архивов.   Запуск…
  2017-08-02 07:44:35 | Категория: Разное
   Индикатор раскладки в Kubuntu
После установки Kubuntu возможно у Вас будет отсутствовать индикатор раскладки клавиатуры, при нажатии Alt+Shift не будет происходить смена языка раскладки клавиатуры. Для настройки раскладки в Kubuntu откройте «Параметры системы». В «Параметрах системы» выберите пункт «Устройства ввода» выберите пункт «Клавиатура» вкладку «Раскладки» Отметьте галочками пункты: Показывать…
  2017-08-04 10:14:05 | Категория: Система
   Double Web Browser – надежный веб-браузер с открытым исходным кодом
Double Web Browser – надежный веб-браузер с открытым исходным кодом, который обеспечивает высокую производительность, стабильность и кросс-платформенную функциональность. Данный браузер отличается высокой защитой данных, как во время работы с поисковыми системами, так и при обмене сообщениями и работе с электронной почтой. Программа установки предоставляет все необходимые средства для инсталляции…
  2017-08-12 09:44:45 | Категория: Интернет
   Установка qutIM c поддержкой Mail.ru
qutIM — кроссплатформенный клиент мгновенного обмена сообщениями с открытым исходным кодом, распространяемый по лицензии GNU GPL. Разработка клиента началась в январе 2008 года с целью создать IM-клиент с дружелюбным интерфейсом.   qutIM это открытый и бесплатный многопротокольный (ICQ, Jabber, Mail.Ru, IRC, VKontakte) клиент обмена мгновенными сообщениями для Windows, Linux, MacOS X, OS/2, Symbian, Maemo/MeeGo, Solaris и *BSD. Преступим,…
  2017-07-31 20:25:06 | Категория: Интернет
   Установка ядра Linux Kernel 3.13
Установка ядра Linux Kernel 3.13 1. Откройте терминал, скопируйте и выполните одну из команд, согласно архитектуры вашей системы/компьютера, на свой страх и риск:   Для 32-bit (одной командой): cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13-rc8-trusty/linux-headers-3.13.0-031300rc8-generic_3.13.0-031300rc8.201401120535_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13-rc8-trusty/linux-headers-3.13.0-031300rc8_3.13.0-031300rc8.201401120535_all.deb…
  2017-08-04 08:54:29 | Категория: Система

Вверх