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

   SMOKIN GUNS — ШУТЕР ОТ ПЕРВОГО ЛИЦА ДЛЯ LINUX
Действие игры происходит на диком западе, в игре есть несколько режимов DeathMatch, дуэль, ограбление банка, так имеется возможность играть по сети или с ботами.   В игре доступно огромное кол-во оружия, это как правило классическое оружие тех времен: револьверы, пулеметы, динамит и др. Игра очень близка к реальности, то есть время зарядки оружия, частота выстрелов, так же очень важно в какую часть тела вы…
  2017-08-10 13:11:24 | Категория: Игры
   Удаление первого элемента массива
Для удаления первого элемента массива используется функция array_shift(). Все числовые ключи будут изменены таким образом, что нумерация массива начнётся с нуля. Пример использования: $a = array("кино", "музыка", "театр", "цирк"); print_r($a); echo "<br>"; array_shift($a); print_r($a); Array ( [0] => кино [1] => музыка [2] => театр [3] => цирк ) Array ( [0] => музыка [1] => театр [2] => цирк…
  2017-08-20 21:27:41 | Категория: PHP
   GEDIT
gedit — свободный текстовый редактор рабочей среды GNOME, Mac OS X и Microsoft Windows с поддержкой Юникода. Распространяется на условиях GNU General Public License.В то время как целью простоты и удобства использования, Gedit является мощным общего назначения текстовый редактор. Программа переведена на русский. Возможности программы: Полная поддержка (UTF-8) Настраиваемая подсветка синтаксиса для различных языков (C, C++, Java, HTML, XML,…
  2017-08-04 18:19:24 | Категория: Офис
   SCROT — УТИЛИТА ПОЗВОЛЯЮЩАЯ ДЕЛАТЬ СКРИНШОТЫ ЭКРАНА ПРИ ПОМОЩИ ТЕРМИНАЛА
Scrot — утилита позволяющая делать скриншоты экрана при помощи терминала. Scrot как и аналогичные программы с графическим интерфейсом может делать снимки с задержкой по времени, а так же делать снимки выделенной области. Перед тем как делать снимок экрана при помощи утилиты Scrot, можно задать папку в которой будут сохранены снимки, если этого не сделать то снимки будут сохранятся в текущей…
  2017-08-11 17:48:15 | Категория: Команды терминала
   Auteria — бесплатная онлайн игра для Linux в стиле MMORPG
Auteria — это фантастический мир внутри нашего мира. Вас ждёт путешествие по неизведанным мирам со множеством приключений. Вы встретите новых друзей и невиданных тварей. Ваша задача освоиться в новом мире и помочь другим. Установка игры в Linux Ubuntu (14.04): Скачайте архив игры с официального сайта игрыПрямая ссылка на скачивание — http://download.auteria.com/auteria/Auteria_Beta_1_97_1.tar.gzРаспакуйте архив: tar -xvzf…
  2017-08-08 18:17:11 | Категория: Игры

Вверх