Objektiteration

PHP bietet eine Möglichkeit Objekte so zu definieren, dass es möglich ist eine Liste von Elementen zu durchlaufen, z.B. mit einem foreach-Statement. Standardmäßig werden alle sichtbaren Eigenschaften für die Iteration benutzt.

Beispiel #1 Einfache Objektiteration

<?php
class MyClass
{
public
$var1 = 'Wert 1';
public
$var2 = 'Wert 2';
public
$var3 = 'Wert 3';

protected
$protected = 'protected var';
private
$private = 'private var';

function
iterateVisible() {
echo
"MyClass::iterateVisible:\n";
foreach (
$this as $key => $value) {
print
"$key => $value\n";
}
}
}

$class = new MyClass();

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


$class->iterateVisible();

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

 var1 => Wert 1 var2 => Wert 2 var3 => Wert 3 MyClass::iterateVisible: var1 => Wert 1 var2 => Wert 2 var3 => Wert 3 protected => protected var private => private var 

Wie die Ausgabe zeigt, durchläuft das foreach alle sichtbaren Eigenschaften, auf die zugegriffen werden kann.

To Top