Heim >Backend-Entwicklung >PHP-Tutorial >Unterscheidet sich der Aufrufbereich von PHP7 von PHP5?
Heute, als ich __call()
und __callStatic()
lernte, las ich den Artikel von Bruder Niao über den Calling Scope von PHP
Aber haben Sie festgestellt, dass der folgende Code in PHP5.5 und PHP7 unterschiedliche Ergebnisse liefert?
<code><?php class Foo { public function bar() { var_dump($this); //PHP5.5中打印的是A对象,PHP7是未定义,也就是NULL } } class A { public function test() { Foo::bar(); } } $a = new A(); $a->test(); ?></code>
Ich konnte keine Anleitung finden, um dies in PHP7 anzupassen. Vielen Dank für Ihren Rat
Heute, als ich __call()
und __callStatic()
lernte, las ich den Artikel von Bruder Niao über den Calling Scope von PHP
Aber haben Sie festgestellt, dass der folgende Code in PHP5.5 und PHP7 unterschiedliche Ergebnisse liefert?
<code><?php class Foo { public function bar() { var_dump($this); //PHP5.5中打印的是A对象,PHP7是未定义,也就是NULL } } class A { public function test() { Foo::bar(); } } $a = new A(); $a->test(); ?></code>
Ich konnte keine Anleitung finden, um dies in PHP7 anzupassen. Vielen Dank für Ihren Rat
Mit dieser Optimierung können Sie es in PHP 7 finden, das nicht abwärtskompatibel ist und in PHP 5.6 als VERALTET markiert wurde
Wenn Sie eine nicht statische Methode statisch aufrufen, werden Sie während des statischen Aufrufs aufgefordert, dass $this nicht definiert ist, und es wird ein Fehler gemeldet.
http://php.net/manual/en/migr...
http://m.runoob.com/php/php-d...