7.11 Methoden und Eigenschaften einer Klasse ermitteln

Problem

Sie möchten ein Objekt inspizieren, um festzustellen, welche Methoden und Eigenschaften es besitzt. Auf diese Weise können Sie Code schreiben, der mit jedem generischen Objekt, unabhängig von seinem Typ, funktioniert.

Lösung

Verwenden Sie get_class_methods( ) und get_class_vars( ), um Informationen über ein Objekt zu erkunden:

// Etwas über Autos erfahren.
$auto_methoden  = get_class_methods('auto');
$auto_variablen = get_class_vars('auto');

// Das Wissen anwenden.
if (in_array('rase_davon', $auto_methoden)) {
    $fluchtwagen = new auto;
    $fluchtwagen->rase_davon( );
}

Diskussion

Es kommt selten vor, dass man ein Objekt hat, von dem man nicht den eigentlichen Code betrachten und damit feststellen ...

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.