Jörg Reinholz: foreach - fürs Archiv

Beitrag lesen

Moin!

foreach ($array as $Kopie) {
   echo "array enthält Element mit Wert: $Kopie";
}

Benutzt man stets, wenn die Position des untersuchten Eimers in der Reihe der Eimer nicht interessiert...

und ist weniger aufwendig zu notieren als:

for ($i=0; $i < count($Eimer); $i++
   echo "Im Eimer ist: ", $Eimer[$i];
}

und damit weniger fehlerträchtig.

Das muss ich einfach noch ergänzen.

<?php
$array[10]='foo';                             
$array[11]='bar';
$array[12]='tok';
for ($i=0; $i<count($array); $i++) { 
    echo $array[$i], "\n";
}
?>

ergäbe es folgendes Theater:

PHP Notice: Undefined offset: 0 in - on line 6
PHP Notice: Undefined offset: 1 in - on line 6
PHP Notice: Undefined offset: 2 in - on line 6

Mit

<?php
$array[10]='foo';                             
$array[11]='bar';
$array[12]='tok';
foreach ($array as $t) {
   echo "$t\n";
}
?>

hingegen:

foo
bar
tok

Man muss also nicht mal wissen, welche numerischen Indizierer belegt sind. (Einige andere Programmiersprachen belegen in dem Fall übrigens alle nichtbelegten Elemente unterhalb des größten Indizierers mit einem NULL-Wert.)

Jörg Reinholz