So rufen Sie nicht statische Methoden aus statischen Methoden in PHP auf: Zuerst müssen Sie das Objekt instanziieren und dann die nicht statischen Methoden im Objekt aufrufen. So rufen Sie eine statische Methode von einer nicht statischen Methode auf: Sie können das Schlüsselwort self oder die Form [Klassenname::Methodenname] verwenden, um sie aufzurufen.
Statische Methoden rufen nicht statische Methoden auf: Bei statischen Methoden in einer Klasse müssen Sie das Objekt instanziieren und dann die Methode in der Klasse aufrufen.
Nicht statische Methode ruft statische Methode auf: Sie kann in der Form self oder des Klassennamens plus :: aufgerufen werden.
(Video-Tutorial-Empfehlung: php-Video-Tutorial)
Beispiel:
<?php class A { public function noneStaticFun() { echo __CLASS__." none static function<br/>"; } public static function staticFun() { echo __CLASS__." static function<br/>"; //静态方法调用非静态方法,需要实例化对象然后再调用对象中的非静态方法 (new A())->noneStaticFun(); } public function testCallStaticFun() { echo "call static function<br/>"; //调用本类的静态方法,使用 self关键字或者类名 self::staticFun(); //A::staticFun(); //也可以使用这种方式 //调用其它类的静态方法,直接使用类名::方法名的形式调用 B::myStaticFun(); } } class B { public static function myStaticFun() { echo __CLASS__." static function<br/>"; } } //演示 $testA = new A(); $testA->testCallStaticFun(); A::staticFun();
Laufergebnisse:
call static function A static function A none static function B static function A static function A none static function
Verwandte Empfehlungen: php-Training
Das obige ist der detaillierte Inhalt vonSo rufen Sie eine nicht statische Methode von einer statischen Methode in PHP auf. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!