Für PHP-Entwickler ist das Abrufen der Methode der aktuellen Klasse ein sehr einfacher, aber wichtiger Vorgang. Wenn wir in PHP die Methode der aktuellen Klasse abrufen müssen, können wir dies auf zwei Arten tun.
Methode 1: Verwenden Sie die magische Konstante __METHOD__
__METHOD__ ist eine magische Konstante in PHP, die den Namen der aktuell ausgeführten Methode zurückgeben kann. Daher können wir die Methoden der aktuellen Klasse abrufen, indem wir sie verwenden. Das Folgende ist ein Beispielcode:
class Person { public function getName() { echo __METHOD__; } } $p = new Person(); $p->getName(); //输出Person::getName
Im obigen Beispiel haben wir eine Person-Klasse erstellt und diese instanziiert. Dann haben wir die Methode getName der Klasse Person aufgerufen und den Wert der Konstante __METHOD__ in der Methode ausgegeben.
Wenn wir die Methode getName aufrufen, gibt die Konstante __METHOD__ „Person::getName“ zurück, was genau den Namen der aktuellen Methode ist, die wir benötigen.
Methode 2: Verwenden Sie die Funktion get_class_methods.
Eine andere Möglichkeit, die aktuelle Klassenmethode abzurufen, ist die Verwendung der in PHP integrierten Funktion get_class_methods. Diese Funktion kann ein Array aller öffentlichen Methoden in einer Klasse zurückgeben. Der Schlüsselname in diesem Array ist der Methodenname und der Wert ist ein aufrufbares Objekt, das auf die aktuelle Klasseninstanz verweist.
Das Folgende ist ein Beispielcode:
class Person { public function getName() { echo "My name is Joe"; } } $p = new Person(); $methods = get_class_methods($p); var_dump($methods);
Im obigen Beispiel haben wir eine Person-Klasse erstellt und sie instanziiert. Dann haben wir die Funktion get_class_methods verwendet, um alle Methoden in der Person-Klasse abzurufen und sie an die Konsole auszugeben.
Wenn wir den obigen Code ausführen, wird das Rückgabeergebnis der Funktion get_class_methods ausgegeben, bei dem es sich um ein Array aller öffentlichen Methoden in der Klasse handelt, wie unten gezeigt:
array(1) { [0]=> string(7) "getName" }
Das obige ist der detaillierte Inhalt vonSo erhalten Sie die Methode der aktuellen Klasse in PHP (auf zwei Arten). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!