第一次使用后,不推荐的错误输出消失

时间:2018-05-16 08:52:52

标签: php

我使用的是php 7.2

我的行动一步一步:

  1. 如果我第一次加载下面的脚本,我就不会输出任何错误。

  2. 如果我犯了语法错误并再次重新加载脚本,我会得到解析错误输出。

  3. 如果我修复了语法错误并重新加载脚本,我将收到此消息:
  4.   

    不推荐使用:不应调用非静态方法First :: run()   静态地在/var/www/test/index.php

    1. 最后,如果我再次重新加载脚本,没有任何修复,我就不会得到 任何错误消息和脚本都能正常工作。
    2. 你能解释一下为什么不推荐的错误会消失吗?

      error_reporting(E_DEPRECATED);
      
      class First {
          public function run() {
              return 'run';
          }
      }
      
      
      $result = First::run();
      
      echo $result;
      

1 个答案:

答案 0 :(得分:0)

run功能不是静态的 只需将其设为静态public static function run()

关于你为什么发生这件事的问题,坦率地说我不知道​​,但你可以通过上面或禁用OPcache来防止它发生