Heim > Fragen und Antworten > Hauptteil
Der Code lautet wie folgt:
<?php
class Demo
{
public function testing()
{
echo "testing\n";
}
}
Demo::testing();
php7.0-Ausführungsausgabe:
$ php demo.php
testing
php5.6-Ausführungsausgabe
$ php demo.php
PHP Strict Standards: Non-static method Demo::testing() should not be called statically in /home/runner/Code/funny/demo.php on line 11
testing
Gibt es auch so eine Bedienung?? Was ist das Prinzip??
高洛峰2017-06-10 09:49:28
5.6 版本以下的 类假如无需实例化而直接调用方法与属性,该方法和属性必须是静态方法,即Demo类要直接调用testing方法,testing必须 public static function testing() { }。不然就会报错。
我不知道7.0以上是不是可以无需声明
扔个三星炸死你2017-06-10 09:49:28
看到了, 只是 php-cli 会执行, 在php-fpm 还是不会
Deprecated: Non-static method Demo::testing() should not be called statically in test.php on line 11
testing