Is het mogelijk om de foreach
index te vinden?
in een voor
lus als volgt:
for ($i = 0; $i < 10; ++$i) {
echo $i . ' ';
}
$i
geeft je de index.
Moet ik de for
lus gebruiken of is er een manier om de index in de foreach
lus te krijgen?
Je kunt een hack in je foreach
zetten, zoals een veld dat bij elke run-through wordt opgehoogd, wat precies is wat de for
loop je geeft in een numeriek-geïndexeerde array. Zo'n veld zou een pseudo-index zijn die handmatig moet worden beheerd (incrementen, enz.).
Een foreach
zal je je index geven in de vorm van je $key
waarde, dus zo'n hack zou'niet nodig moeten zijn.
b.v., in een foreach
$index = 0;
foreach($data as $key=>$val) {
// Use $key as an index, or...
// ... manage the index this way..
echo "Index is $index\n";
$index++;
}
Je kunt $i
buiten de lus maken en $i++
onderaan de lus doen.