Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich PHP foreach?

Wie verwende ich PHP foreach?

烟雨青岚
烟雨青岚Original
2020-06-29 14:31:172691Durchsuche

Die foreach-Anweisung in PHP wiederholt eine eingebettete Anweisungsgruppe für jedes Element in einem Array oder einer Objektsammlung. Sie wird verwendet, um die Sammlung zu durchlaufen, um die erforderlichen Informationen zu erhalten. Sie sollte nicht zum Ändern des Inhalts verwendet werden die Sammlung, um unvorhersehbare Nebenwirkungen zu vermeiden. Die Syntax lautet „foreach (Array als Variable) Schleifenkörper“.

Wie verwende ich PHP foreach?

Die foreach-Anweisung wiederholt eine Gruppe eingebetteter Anweisungen für jedes Element in einem Array oder einer Sammlung von Objekten. Die foreach-Anweisung wird verwendet, um eine Sammlung zu durchlaufen, um die erforderlichen Informationen zu erhalten. Sie sollte jedoch nicht zum Ändern des Inhalts der Sammlung verwendet werden, um unvorhersehbare Nebenwirkungen zu vermeiden.

Anwendbare Programmiersprachenkategorien: Java, C#, PHP, D-Sprache (Phobos-Bibliothek).

Die foreach-Anweisung ist eine neue Schleifenanweisung in c#. Sie eignet sich besonders für die Verarbeitung von Datentypen wie Arrays und Sammlungen. Das allgemeine Syntaxformat der

foreach-Anweisung lautet wie folgt:

foreach(数据类型 标识符 in 表达式)
{
循环体2
}。

php 4 führte die foreach-Struktur ein, die Perl und anderen Sprachen sehr ähnlich ist. 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)-Anweisung

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).

foreach (array_expression as $key => $value)-Anweisung

Das zweite Format macht dasselbe, außer dass der Schlüsselname der aktuellen Einheit ebenfalls verwendet wird be in Die Variable $key wird jeder Schleife zugewiesen.

Seit PHP 5 ist es auch möglich, Objekte zu durchlaufen. Hinweis: Wenn foreach mit der Ausführung beginnt, zeigt der Zeiger im Array automatisch auf das erste Element. Dies bedeutet, dass vor der foreach-Schleife kein Aufruf von reset() erforderlich ist.

Hinweis: Sofern nicht auf das Array verwiesen wird, bearbeitet foreach eine Kopie des angegebenen Arrays, nicht das Array selbst. Daher wird der Array-Zeiger durch die Each()-Struktur nicht verändert und Änderungen an den zurückgegebenen Array-Einheiten haben keinen Einfluss auf das ursprüngliche Array. Allerdings bewegt sich der interne Zeiger des ursprünglichen Arrays während der Verarbeitung des Arrays vorwärts. Unter der Annahme, dass die foreach-Schleife bis zum Ende läuft, zeigt der interne Zeiger des ursprünglichen Arrays auf das Ende des Arrays.

Seit PHP 5 ist es einfach, die Zellen eines Arrays zu ändern, indem man & vor $value hinzufügt. Diese Methode weist einen Wert per Referenz zu, anstatt ihn zu kopieren.

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>

Diese Methode ist nur verfügbar, wenn auf das zu durchlaufende Array verwiesen werden kann (z. B. wenn es sich um eine Variable handelt).

Hinweis: foreach unterstützt nicht die Möglichkeit, Fehlermeldungen mit „@“ zu unterdrücken.

Benutzer haben möglicherweise bemerkt, dass die folgenden Codes die gleichen Funktionen haben:

<?php
$arr = array("one", "two", "three");
reset($arr);
while (list(, $value) = each($arr)) {
 echo "Value: $value<br>/n";
}foreach ($arr as $value) { 
echo "Value: $value<br />/n";
}
?>

Die folgenden Codes haben auch die gleichen Funktionen:

<?php
$arr = array("one", "two", "three");
reset($arr);
while (list($key, $value) = each($arr)) { 
echo "Key: $key;
 Value: $value<br />/n";
}foreach ($arr as $key => $value) { 
echo "Key: $key; 
Value: $value<br />/n";
}
?>

Empfohlenes Tutorial: "php Tutorial

Das obige ist der detaillierte Inhalt vonWie verwende ich PHP foreach?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn