In diesem Artikel wird hauptsächlich die Verwendung von foreach() in PHP vorgestellt. Ich hoffe, dass er für alle hilfreich ist.
PHP 4 führte das foreach-Konstrukt ein, ähnlich wie Perl und andere Sprachen. Dies ist lediglich eine praktische Möglichkeit, über ein Array zu iterieren. foreach kann nur mit Arrays verwendet werden und es tritt ein Fehler auf, wenn versucht wird, es mit anderen Datentypen oder einer nicht initialisierten Variablen zu verwenden. Es gibt zwei Syntaxen, wobei die zweite eine weniger wichtige, aber nützliche Erweiterung der ersten ist.
foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement
Das erste Format iteriert über das angegebene array_expression-Array. Bei jedem Durchlauf der Schleife wird $value der Wert der aktuellen Zelle zugewiesen und der Zeiger innerhalb des Arrays wird um einen Schritt vorwärts bewegt (sodass die nächste Zelle in der nächsten Schleife abgerufen wird).
Das zweite Format macht dasselbe, außer dass der Schlüsselname der aktuellen Zelle in jeder Schleife auch der Variablen $key zugewiesen wird.
Empfohlenes Handbuch:php vollständiges Handbuch zum Selbststudium
Schauen wir uns zunächst die erste Aussage an. Diese Aussage ist relativ einfach. array_expression bezieht sich auf Es handelt sich um einen Array-Ausdruck. Die as $val-Anweisung ruft nacheinander den Wert des Arrays ab und speichert ihn in der Variablen $val. Diese Methode kann nur den Wert im Array abrufen, nicht jedoch den Indexwert des Arrays Array.
Zum Beispiel:
$myArray=array("1"=>"val1","2"=>"val2","3"=>"val3"); foreach($myArray as $val) { print($val." "); }
Das Ergebnis wird ausgegeben: val1 val2 val3
Sehen wir uns das zweite Format an, das genau wie das erste Format erhalten werden kann. Zusätzlich zum Wert des Elements im Array kann auch der Indexwert des Elements abgerufen und in der Variablen $key gespeichert werden. Wenn der Indexwert des Arrays nicht manuell festgelegt wurde, wird er auf den Systemstandard zurückgesetzt Wert einstellen;
Siehe Positivbeispiel:
Schauen Sie sich zunächst ein einfaches eindimensionales Array an:
$myArray=array("1"=>"val1","2"="val2","3"=>"val3"); foreach($myArray as $key=>$val) { print($key."=>".$val.";"); }
Das Programm gibt Folgendes aus: 1=>val1;2=> ;val2;3=>val3;, Schauen wir uns als Nächstes eine komplexere zweidimensionale Array-Durchquerung an. Das Programm lautet wie folgt:
$myArray=array( "1"=>array("11"=>"val11","12"=>"val12","13"=>"val13"), "2"=>array("21"=>"val21","22"=>"val22","23"=>"val23"), "3"=>array("31"=>"val31","32"=>"val32","33"=>"val33") ); print("<ul>"); foreach($myArray as $key=>$val) { print("<li>".$key."</li>"); if (is_array($val)) { //判断$val的值是否是一个数组,如果是,则进入下层遍历 print("<ul>"); foreach($val as $key=>$val) { print("<li>".$key."=>".$val."</li>"); } print("</ul>"); } } print("</ul>");
Ausgabeergebnis:
1 11=>val11 12=>val12 13=>val13 2 21=>val21 22=>val22 23=>val23 3 31=>val31 32=>val32 33=>val33
Da es sich bei dem Obigen um ein zweidimensionales Array handelt, ist der nach der ersten Durchquerung erhaltene $val-Wert ein Array, daher habe ich der Durchquerung eine Beurteilung für die Array-Durchquerung der zweiten Ebene hinzugefügt.
Noch ein Beispiel zur Lösung des Rätsels
<?php $a = array("1"=>"语文","2"=>"数学","3"=>"英语"); $b = array("1"=>"95","2"=>"99","3"=>"92"); foreach($a as $key=>$value){ echo $value; echo $b[$key]."<br>"; } ?>
Die Frage ist, warum wir $b[$key] anstelle von $b[$value] verwenden, um den Wert im Array $b auszugeben?
Warum ist das so?
$a = array("1"=>"语文","2"=>"数学","3"=>"英语");上面这个和下面这个是完全一样的 $a[1]="语文";$a[2]="数学"$a[3]=“英语”
Wie geben wir das obige Array aus?
Es muss echo $a[1];
richtig sein?
Wenn es keinen Zweifel gibt, machen wir weiter! ! ! !
————————————————————————————————————————
Sagen Sie einfach foreach
Das Format ist wie folgt: foreach (Array-Name als Index => Wert)
Der Index ist das $a[1] oben , und die 1 ist hier der Index der Array-Marke!
Jetzt sollten Sie verstehen, warum $a[$key] so ausgegeben wird
Denken Sie daran, dass die Ausgabemethode des Arrays immer $a[ ist, egal wie Sie es ändern. 1], nein Es ist $a['Sprache']
============================== ======= ===========================
foreach() hat zwei Verwendungszwecke :
1: foreach(array_name as $value){ statement; }
Der array_name ist hier der Name des Arrays, das Sie durchlaufen möchten. In jeder Schleife wird der Wert des aktuellen Elements des array_name-Arrays $value und der Index darin zugewiesen Das Array bewegt sich einen Schritt nach unten, d. h. die nächste Schleife gibt das nächste Element zurück.
2:foreach(array_name as $key => $value){ statement; }
Der Unterschied zwischen dieser und der ersten Methode besteht darin, dass es einen zusätzlichen $key gibt, d. h. zusätzlich zur Zuweisung des Werts des aktuellen Elements zu $value wird auch der Schlüsselwert des aktuellen Elements zugewiesen in jeder Schleife zugewiesen werden. Geben Sie die Variable $key an. Der Schlüsselwert kann ein tiefgestellter Wert oder eine Zeichenfolge sein.
Zum Beispiel „0“ in Buch[0]=1, „id“ in Buch[id]="001".
Empfohlene verwandte Artikel:
1.Zwei Verwendungen von PHP foreach als $key => $value
2.Detailliertes Verständnis der Verwendung des foreach-Anweisungsschleifen-Arrays
Verwandte Videoempfehlungen:
1.Dugu Jiujian (4)_PHP-Video-Tutorial
Verwandte Empfehlungen:
So implementieren Sie eine Skin-Änderung in PHP basierend auf Cookies
Zusatz, Löschen und Ändern der MySQL-Implementierung in PHP. Prüffunktion
PHP-Methoden für String-Operationen
Das obige ist der detaillierte Inhalt vonSo verwenden Sie foreach() in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!