7.6 String-Darstellungen für Objekte definieren

Problem

Sie möchten steuern, wie PHP ein Objekt anzeigt, wenn Sie es ausgeben.

Lösung

Implementieren Sie eine __toString( )-Methode, wie in Listing 7.14 gezeigt.

class Person {
     // Rest der Klasse

    public function __toString() {
        return "$this->name <$this->email>";
    }
}

Listing 7.14 Die String-Repräsentation einer Klasse definieren

Diskussion

PHP stattet Objekte mit einer Möglichkeit aus, ihre Konvertierung in einen String zu steuern. Das ermöglicht Ihnen, Objekte lesbar auszugeben, ohne dass Sie dazu Mengen an zusätzlichem Code schreiben müssten.

PHP ruft die __toString( )-Methode eines Objekts auf, wenn Sie das Objekt mit echo oder print ausgeben, wie Sie es in Listing 7.15 sehen.

class Person { protected ...

Get PHP 5 Kochbuch, Third Edition 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.