升级到PHP 5.4.0后调用未定义的方法

时间:2012-04-26 23:17:58

标签: php apc fatal-error

被这一个难倒。这段代码给了我

  

PHP致命错误:调用未定义的方法MyObject :: helloWorld()

但是只有我第二次运行它,第一次运行正常。

class MyObject
{

  function __construct()
  {
    echo("creating MyObject...");
  }


  public function helloWorld()
  {
    echo("Hello World!");
  }


}

$obj = new MyObject();
$obj->helloWorld();

我也看到第二次生成“创建MyObject ...”,但不是“Hello World!”。

我正在升级到PHP 5.4.0。

我必须遗漏一些非常明显的东西。

1 个答案:

答案 0 :(得分:11)

这是APC错误...您可以在/etc/php.ini/etc/php.d/apc.ini中应用修补程序或禁用APC,具体取决于您的配置。

第一次运行脚本时,操作码生成并由APC缓存,第二次运行脚本操作码从APC缓存中提取。因为APC缓存很糟糕,所以在第二次运行时脚本会失败。

请参阅此错误以获取参考php #61219php #60658