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

   Команда df
Команда df позволяет узнать свободное место на сегментах диска которые подключены к системе.   Пример использования: df  Файл.система   1K-blocks Использовано  Доступно Использовано% Cмонтировано в /dev/sda1      960530808    685860832 225854720           76% / none                   4            0         4            0% /sys/fs/cgroup udev            …
  2017-08-02 10:29:39 | Категория: Команды терминала
   constant - возврат значения константы
Функция constant() возвращает значение константы. Функция используется, если вам необходимо запросить значение константы зная ее имя. Пример использования: define ("сумма", 100); echo сумма; // 100 echo constant("сумма"); //…
  2017-09-20 20:17:33 | Категория: PHP
   KOBO DELUXE
Kobo Deluxe — двумерный шутер от третьего лица с простой и чувствительной системой управления, где нужно сражаться с кучей вражеских кораблей, которые стреляют, охотятся на вас, окружая ведут огонь, или даже запускают к вам другие корабли, пока вы пытаетесь уничтожить их базу, похожую на лабиринт. В игре 50 уровней, каждый следующий сложнее предыдущего, с различным набором врагов, для борьбы с которыми надо…
  2017-08-06 20:50:38 | Категория: Игры
   Увеличение размера виртуальной памяти для Linux Ubuntu
Иногда при загрузки больших приложений может понадобится дополнительная виртуальная память, получить дополнительную виртуальную память очень легко, причем ниже описанная процедура абсолютно безопасна для системы, так как не затрагивает существующие разделы диска, а создает swap-файл.   Определение размера дополнительной виртуальной памяти: sudo -i пароль dd if=/dev/zero of=/swap bs=1M count=1024 count —…
  2017-08-02 10:30:38 | Категория: Система
   Сравнение переменной с массивом
Если имеется переменная которую необходимо сравнить с массивом,то можно воспользоваться функцией in_array() которая проверяет присутствует ли в массиве значение. in_array(значение, массив); Пример кода: $a = "bmp"; $b = array('zip','7z','rar','tar','taz'); $c = array('png','jpg','bmp','psd','gif'); if(in_array($a, $b)){echo "Это архив";} elseif(in_array($a, $c)){echo "Это изображение";} Это…
  2017-08-19 22:36:45 | Категория: PHP

Вверх