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

   ДОСТУП К ТЕРМИНАЛУ УДАЛЕННОГО КОМПЬЮТЕРА UBUNTU
Доступ к терминалу удаленного компьютера Ubuntu В данной статье речь пойдет о получении доступа к терминалу удаленного компьютера в локальной сети Ubuntu. Для начала на все компьютеры к терминалам которых Вы хотите получить доступ установите сервер OpenSSH: sudo apt-get install openssh-server Далее в терминале наберите следующую команду: ssh -X 192.168.xxx.xxx где 192.168.xxx.xxx IP адрес подключения удаленного компьютера. Для того чтобы…
  2017-08-07 11:09:12 | Категория: Система
   Установка драйвера SIS671 для Xubuntu 14.04-15.04
Для установки драйвера для видеокарты SIS671 в терминале выполните следующие команды: wget https://github.com/gununu/xf86-video-sis-stable/archive/master.zip unzip master.zip cd xf86-video-sis-stable-master/ sudo apt-get install xorg-dev xutils-dev mesa-common-dev libdrm-dev libtool aclocal autoheader libtoolize automake --add-missing autoconf ./configure --prefix=/usr --disable-static make sudo make install Далее измените файл xorg.conf sudo nano /etc/X11/xorg.conf В файл xorg.conf вставьте следующий текст: Section "Device" Identifier "Default device" Driver "sisimedia" EndSection Section…
  2017-08-12 21:41:06 | Категория: Драйвера
   ASTROMENACE — КОСМИЧЕСКИЙ СКРОЛЛШУТЕР С ВОЗМОЖНОСТЬЮ МОДЕРНИЗАЦИИ КОРАБЛЯ
В игре 19 различных систем вооружения, 15 миссий, более 100 различных типов врагов. Перед началом игры необходимо выбрать уровень сложности. В AstroMenace можно не только стрелять, но и покупать оружие, продавать его на рынке. За деньги, заработанные за уничтожение противника, можно поставить новый двигатель или купить залповую установку. По ходу игры миссии усложняются. В игре присутствует на выбор много видов…
  2017-08-11 18:56:59 | Категория: Игры
   CAIRO-DOCK — ФУНКЦИОНАЛЬНЫХ И КРАСИВЫЙ ДОК ДЛЯ РАБОЧЕГО СТОЛА LINUX
Cairo-Dock выглядит очень красиво и стильно, доступно множество эффектов и тем оформления. Имеется горячие клавиши для быстрого запуска приложений. При помощи плагинов можно добавлять в док элементы для проверки почты, чтения RSS лент, отображения погоды, отправки сообщений и др. Программа Cairo-Dock доступна в официальном репозитории Ubuntu, поэтому ее можно установить через центр приложений Ubuntu или воспользоваться…
  2017-08-11 19:25:19 | Категория: Система
   «Битва за Веснот» — пошаговая стратегическая компьютерная игра в жанре фэнтези
The Battle for Wesnoth — «Битва за Веснот» — пошаговая стратегическая компьютерная игра в жанре фэнтези, созданная независимым коллективом разработчиков и распространяемая полностью по свободной лицензии GNU General Public License. Исходный код доступен на сайте игры, там же имеются инструкции по сборке из исходных кодов и готовые пакеты для Microsoft Windows, Mac OS X, различных версий Linux и других операционных…
  2017-08-12 00:55:47 | Категория: Игры

Вверх