Mailinglisten-Archive |
Hallo Sebastian, >> Du arbeitest unbewusst auf zwei verschiedenen Arrays [1]. foreach() >> arbeitet immer auf einer KOPIE des Arrays. Außerdem wird der Arrayzeiger >> immer zurückgesetzt vorher. D.h. dein end() ist unwirksam. > > nur bei der Kopie, das end() ist also wirksam danke für den Hinweis! Mit den letzten Details kenne ich mich dann auch nicht aus, weil ich dieses next, prev, end, reset, each und current-Gerassel noch nie wirklich benutzt hab. Entweder man kann direkt drauf zugreifen oder man nimmt foreach(). Am Besten ist jedoch die Verwendung von Iteratoren - da ist das Konzept ordentlich gekapselt und per Objekt verfügbar. Die Iteratoren bilden zwar intern auch nur auf die oben genannten Funktionen ab, jedoch ist das zur Verfügung stehende Interface um Längen besser. Grüße, Niels
php::bar PHP Wiki - Listenarchive