foreach um den Inhalt eines Arrays/Objekts zu ändern

04.03.2007

Wenn man foreach verwendet operiert PHP auf einer Kopie des Elements. Man hat aber auch die Möglichkeit mit einer Referenz auf das Objekt statt mit einer Kopie zu arbeiten.

Dazu steht der & Operator zur Verfügung.

Das folgende Beispiel zeigt, wie man z.B. das Ergebnis einer MySQL Abfrage von Slashes befreien kann.

PHP - Code:
foreach ($result as &$value) {
   $value = stripslashes ($value);
}
unset ($value);


Wichtig ist das unset am Ende, da $value sonst nach der foreach-Schleife immernoch auf das letzte Array-Element zeigt.

PHP - Code:
$value = "be careful";
Ohne unset würde diese Anweisung nach der Schleife das letzte Element verändern.

Seit PHP 5 ist es auch möglich mit foreach die Elemente eines Objekts zu durchlaufen.

Deine Meinung ist gefragt:


Es wurden noch keine Kommentare geposted.

Sei der Erste und teile uns Deine Meinung mit.

Einen neuen Kommentar erstellen...