Foreach-konstruktionen

Konstruktionen foreach tillader sekventiel gennemgang af array-elementer. Den arbejder med arrays og objekter, der implementerer grænsefladen Traversable. Der findes to syntaksvarianter: til gennemgang af kun værdier og til gennemgang af nøgler og værdier.

Syntaks

phpforeach (array as $value) {
  // loop-krop
}
phpforeach (array as $key => $value) {
  // loop-krop
}

Eksempel

Simpel gennemgang af array-elementer:

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

Resultat af kodeudførelse:

php1
2
3
4
5

Eksempel

Gennemgang af array med indhentning af nøgler og værdier:

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

Resultat af kodeudførelse:

phpa: 1
b: 2
c: 3

Eksempel

Brug af reference til modifikation af array-elementer:

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

Resultat af kodeudførelse:

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

Se også

  • funktionen array_map,
    som anvender en callback-funktion på alle elementer i et array
  • funktionen array_walk,
    som anvender en brugerdefineret funktion på hvert element i et array