Waneer een element uit een Array wordt verwijderd, ontstaat er een "gat" in de Array index.
$foo = array(
'whatever', // [0]
'foo', // [1]
'bar' // [2]
);
unset($foo[0]); // remove item at index 0
Om een aaneengesloten Array index te behouden moet deze opnieuw geïndexeerd worden:
$foo2 = array_values($foo); // 'reindex' array
Resultaat
$foo2 = array(
'foo', // [0], before [1]
'bar' // [1], before [2]
);
Alhoewel dit zo basis PHP is, gebruik ik toch vaak een foreach loop om een Array opnieuw te indexeren ;-)