class A { public static function echoClass() { echo __CLASS__; }
public function what(){ echo __CLASS__;}
public static function test() { <pre name="code" class="php"> $this->what(); //输出B
self bezieht sich auf das Objekt der aktuellen Klasse, static bezieht sich auf das Objekt der aufrufenden Klasse, $this bezieht sich auch auf das Objekt der aktuell aufgerufenen Klasse, aber $this kann keine statischen Eigenschaften aufrufen, self Ja, und __CLASS__ wird verwendet, um den Namen der Klasse anzugeben, der im Allgemeinen zum Registrieren der Klassenmethode verwendet wird.
class B extends A { public static function echoClass($name=1) { spl_autoload_register(array(__CLASS__,"echoClass")); echo __CLASS__; } }
Urheberrechtserklärung: Dieser Artikel ist ein Originalartikel von Blogger und wurde nicht ohne die Erlaubnis des Bloggers veröffentlicht.
Das Obige hat die neue Funktion von PHP53 eingeführt, die verzögerte statische Bindung, einschließlich der relevanten Aspekte. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.