8.1 Über die Eigenschaften eines Objekt iterieren

Problem

Sie wollen über die öffentlichen Eigenschaften eines Objekt iterieren können, um die Eigenschaftsnamen und -werte auszugeben. Das kann beispielsweise zur Diagnose nützlich sein.

Lösung

Sofern Ihre Klasse keinen speziellen Iterator implementiert, ist die Iteration über die Eigenschaften das Default-Verhalten der Objekte dieser Klasse:

class Person {
    public $name;
    public $address;
    private $pin = "3958";

    // ...
}

$fred = new Person;
$fred->name = "Fred";
$fred->address = "Stonehenge";

foreach ($fred as $property => $value) {
    echo "$property:$value<br/>";
}

Diskussion

Das obige Beispiel gibt aus:

name:Fred
address:Stonehenge

Wie Sie sehen können, wird nur über die als public deklarierten Eigenschaften ...

Get PHP 5 Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.