2009-08-18 20 views

risposta

75
$array = array("Jonathan","Sampson"); 

foreach($array as $value) { 
    print $value; 
} 

o

$length = count($array); 
for ($i = 0; $i < $length; $i++) { 
    print $array[$i]; 
} 
+2

Si noti che il ciclo for() doesn' t lavorare su array con indici stringa (ovviamente) –

+3

Il conteggio deve essere calcolato in anticipo. Nel tuo esempio, viene calcolato su ogni ciclo.Dovrebbe essere: per ($ i = 0, $ count = count ($ array); $ i <$ count; $ i ++) – ryeguy

8

utilizzare un ciclo foreach, che scorre tutto il tasto => coppie di valori:

foreach($array as $key=>$value){ 
    print "$key holds $value\n"; 
} 

o per rispondere completamente alla tua domanda:

foreach($array as $value){ 
    print $value."\n"; 
} 
2
foreach($array as $key => $value) echo $key, ' => ', $value; 
0

Se stai eseguendo il debug di qualcosa e vuoi solo vedere cosa c'è lì per il tuothe print_f function formatta l'output piacevolmente.

0

Inoltre, se si esegue il debug come indicato da Tom, è possibile utilizzare var_dump per visualizzare la matrice.

2

Inoltre, trovo che usare i tag <pre></pre> attorno a var_dump o print_r produca un dump molto più leggibile.

2

sia foreach:

foreach($array as $key => $value) { 
    // do something with $key and $value 
} 

o con per:

for($i = 0, $l = count($array); $i < $l; ++$i) { 
    // do something with $array[$i] 
} 

, ovviamente, è possibile accedere solo i tasti quando si utilizza un ciclo foreach.

se si desidera stampare la matrice (tasti e) i valori solo per il debug di uso var_dump o print_r

0

Foreach prima foreach: :)

reset($array); 
while(list($key,$value) = each($array)) 
{ 
    // we used this back in php3 :) 
} 
5

per l'utilizzo di entrambe le cose valore variabili e kye

foreach($array as $key=>$value){ 
print "$key holds $value\n"; 
} 

per l'utilizzo di variabili valore solo

foreach($array as $value){ 
print $value."\n"; 
} 

se si vuole fare qualcosa ripetutamente fino uguale alla lunghezza dell'array noi questo

for($i = 0, $l = count($array); $i < $l; ++$i) { 
// do something with $array[$i] 
} 

Grazie!

2

Ecco esempio:

$array = array("Jon","Smith"); 
foreach($array as $value) { 
    echo $value; 
} 
+0

Potresti per favore elaborare più la tua risposta aggiungendo un po 'più di descrizione della soluzione che fornisci? – abarisone