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

   Kazam
Kazam  — очень простая но удобная программа для записи видео с экрана Вашего компьютера. Программа может записывать весь экран целиком или произвольную область экрана. В опциях программы можно отключить запись курсора мыши, включить или выключить запись звука с микрофона, установить задержку включения записи. В программе Kazam можно делать скриншоты всей области экрана или произвольной…
  2017-08-03 08:02:55 | Категория: Разное
   GIMP
GIMP — это гибкая в настройке и лёгкая в установке программа. Графический редактор создан для миллионов и прекрасно подходит как для рисования и графического дизайна, так и для разработки web-дизайна. GIMP — это свободный редактор растровых изображений, который поддерживает большое количество форматов графики. Сразу после скачивания и установки, GIMP умеет работать…
  2017-07-31 20:25:31 | Категория: Графика
   Меняем время паузы загрузчика Grub
При старте системы запускается загрузчик Grub и в течении 10 сек (если у Вас более одной ОС) идет отсчет до начала старта загрузки ОС. Можно конечно нажать Enter и ОС начнет загружаться, а можно изменит время ожидания загрузчика Grub. В терминале выполните следующие действия: sudo nano /etc/default/grub Найдите строку GRUB_TIMEOUT=10 и смените цифру 10 (секунды) на другую. Сохраните изменения в файле и обновите grub: sudo…
  2017-08-04 09:42:25 | Категория: Система
   HandBrake
HandBrake — программное обеспечение для конвертирования MPEG-видео (включая DVD-видео) в MPEG-4 видеофайл в форматах mp4 и mkv. Поддерживаемые форматы Входные: DVD, DVD-образы, DVD VOB файлы, MPEG-TS, Matroska, AVI, mpeg-4 и т.д.Форматы выходных контейнеров: MP4 и MKV.Видеокодеки: x264.Аудио: AAC и AC-3 Программа HandBrake доступна в официальном репозитории Ubuntu, поэтому ее можно установить через центр приложений Ubuntu или воспользоваться…
  2017-08-06 01:52:43 | Категория: Мультимедиа
   GOOGLE EARTH ДЛЯ LINUX UBUNTU (13.10)
Google Планета Земля (англ. Google Earth) — проект компании Google, в рамках которого в сети Интернет были размещены спутниковые (или в некоторых точках аэрофото-) изображения всей земной поверхности. Фотографии некоторых регионов имеют беспрецедентно высокое разрешение. В отличие от других аналогичных сервисов, показывающих спутниковые снимки в…
  2017-08-04 09:21:03 | Категория: Разное

Вверх