dedlfix: gelöschte Array Elemente sind wieder da (array_filter)

Beitrag lesen

Tach!

Aus den Codefragmenten kann man nur sehen, dass die for-Schleife falsch ist an der Stelle.
Wenn vorher aus dem Index-Kreis des Arrays einzelne Elemente entfernt wurden, kann man anschließend nicht in der gezeigten Art mit for arbeiten.

Ah ja, das wird das Problem sein. »Array keys are preserved.«

Man bekäme Hinweise darauf, wenn man das error_reporting auf E_ALL (und display_errors auf 1) stehen hat. Dann kommen Notice-Meldungen für Zugriffe auf nicht vorhandene Elemente. foreach wäre die bessere Variante. Die for-Schleife kommt wegen des count() außerdem nicht an die Elemente mit höheren Schlüsselwerten. Wenn 0 bis 4 drin waren und Nummer 1 und 2 gefiltert wurden, dann liefert count() eine 3 und da das for nur bis <3 geht, kommt es bei Nummer 3 und 4 nicht vorbei.

dedlfix.