Конструкција foreach

Конструкцијата foreach овозможува секвенцијално прелистување на елементите од низа. Таа работи со низи и објекти што го имплементираат интерфејсот Traversable. Постојат две синтаксички варијанти: за прелистување само на вредностите и за прелистување на клучевите и вредностите.

Синтакса

phpforeach (array as $value) {
  // тело на циклусот
}
phpforeach (array as $key => $value) {
  // тело на циклусот
}

Пример

Едноставно прелистување на елементи од низа:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as $value) {
    echo $value . '<br>';
  }
?>

Резултат од извршувањето на кодот:

php1
2
3
4
5

Пример

Прелистување на низа со добивање на клучеви и вредности:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3];
  
  foreach ($arr as $key => $value) {
    echo "$key: $value<br>";
  }
?>

Резултат од извршувањето на кодот:

phpa: 1
b: 2
c: 3

Пример

Користење на референца за модификација на елементите од низата:

php<?php
  $arr = [1, 2, 3, 4, 5];
  foreach ($arr as &$value) {
    $value *= 2;
  }
  
  unset($value);
  print_r($arr);
?>

Резултат од извршувањето на кодот:

php[2, 4, 6, 8, 10]

Погледнете ги и

  • функцијата array_map,
    која ја применува callback-функцијата на сите елементи од низата
  • функцијата array_walk,
    која ја применува корисничката функција на секој елемент од низата