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

   ALIEN ARENA — трёхмерная сетевая «стрелялка» от первого лица
ALIEN ARENA — трёхмерная сетевая «стрелялка» от первого лица, которая создана на основе исходного кода Quake II и Quake III, выпущенных id Software по лицензии GPL. Она имеет 32-битную графику, новый движок частиц и эффектов, световые эффекты, отражения от воды, высококачественные текстуры и скины, подробные полигональные модели, сногсшибательные карты. Всё это поднимает ALIEN ARENA на новый уровень соперничества среди…
  2017-08-04 10:36:05 | Категория: Игры
   Unity Tweak Tool
Unity Tweak Tool — это программа для настройки рабочей среды Unity в Ubuntu. Помогает улучшить внешний вид и шире раскрыть возможности оболочки.   Unity Tweak Tool есть в Центре приложений Ubuntu, откуда вы можете установить её или выполните следующую команду в терминале: sudo apt-get install…
  2017-08-06 00:13:24 | Категория: Ubuntu
   bcsub - вычитает одно число из другого с произвольной точностью.
Функция bcsub() вычитает одно число из другого с произвольной точностью. Пример использования: $a = 23.458; $b = 45.0258; echo bcsub($a,$b,3); ///…
  2017-09-10 17:55:42 | Категория: PHP
   Не все модули отображаются в менеджере настроек CompizConfig
Compiz — композитный менеджер окон для X Window System, использующий для ускорения 3D графики OpenGL. Он предоставляет множество новых графических эффектов, доступных в любых графических средах X Window, в том числе GNOME и KDE. Как правило если у Вас в менеджере настроек отсутствуют необходимые модули настроек, то на это есть две причины: Не установлен пакет compiz-plugins Установка пакета: sudo apt-get install compiz-plugins Вторая…
  2017-08-06 19:43:10 | Категория: Ubuntu
   Не запускается OPENSHOT (Ubuntu 15.10)
OpenShot Video Editor — это свободный нелинейный видеоредактор с открытым исходным кодом для Linux, построенный с помощью Python, GTK и MLT Framework. Проект был основан в августе 2008 года Джонатоном Томасом, с целью предоставления стабильного, свободного и простого в использовании видеоредактора. После очередного обновления видеоредактор Openshot перестал запускаться, при запуске программы через терминал возникает…
  2017-08-13 10:19:45 | Категория: Система

Вверх