È possibile trovare l'indice foreach
?
in un ciclo for
come segue:
for ($i = 0; $i < 10; ++$i) {
echo $i . ' ';
}
$i
vi darà l'indice.
Devo usare il ciclo for
o c'è un modo per ottenere l'indice nel ciclo foreach
?
Potete mettere un hack nel vostro foreach
, come un campo incrementato ad ogni esecuzione, che è esattamente ciò che il for
loop vi dà in un array indicizzato numericamente. Un tale campo sarebbe uno pseudo-indice che ha bisogno di una gestione manuale (incrementi, ecc.).
Un foreach
vi darà il vostro indice nella forma del vostro $key
valore, quindi un tale hack non dovrebbe essere necessario.
Ad esempio, in un
$index = 0;
foreach($data as $key=>$val) {
// Use $key as an index, or...
// ... manage the index this way..
echo "Index is $index\n";
$index++;
}
Potete creare $i
fuori dal ciclo e fare $i++
alla fine del ciclo.