Η δομή 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,
    που εφαρμόζει μια προσαρμοσμένη συνάρτηση σε κάθε στοιχείο του πίνακα