Hello,
Das foreach existiert IMHO als vereinfachung, wenn man ein Array durchlaufen muss.
Foreach() arbeitet die Kette vom Startanker Element für Element entsprechend dem Folgezeiger ab.
For() arbeitet die Kette entsprechend der Treffer in der Keyliste ab
Das bedeutet aber auch, dass für jeden Iterationsschritt die Kette wieder neu
durchlaufen werden muss, bis ein Treffer gelandet wird.
Wird kein Treffer gelandet, gibt es einen Datenzugriffsfehler
den muss man abfangen
each() arbeitet die Kette vom aktuellen Element ab Element für Element entsprechend dem
Folgezeiger ab.
Die For-Schliefe eignet sich nur für "Arrays" mit ordinalen Keys, die möglichst auch keine Lücken haben dürfen (Ordinalität besagt das eigentlich schon). Wenn Lücken erwartet werden, müsste man die abfangen.
Foreach ist die ohne Zweifel am besten geeigente Zugriffsmethode für Abfragfeserien in PHP. Man könnte zur Unterstützung auch noch array_slice und array_splice verwenden, um sich den entsprechenden Ausschnitt aus dem Array zu verschaffen.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau