升级到PHP 5.4.0后调用未定义的方法
问题描述:
被这一个难住了。此代码是给我升级到PHP 5.4.0后调用未定义的方法
PHP Fatal error: Call to undefined method 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的过程中。
我必须错过一些真正明显的东西。
答
这是APC错误...您可以在/etc/php.ini
或/etc/php.d/apc.ini
中应用修补程序或禁用APC,具体取决于您的配置。
第一次运行脚本时,操作码正在生成并由APC缓存,第二次运行脚本操作码时,将从APC缓存中取出操作码。由于APC缓存不好,您的脚本在秒运行时失败。
看到这个错误的引用php #61219和php #60658
没错。那完全是它。谢谢Alex! – Bill 2012-04-27 17:47:25
@alex:您的帮助是必需的;)http://stackoverflow.com/questions/11147549/anyone-successfully-serving-high-traffic-with-php-5-4-4-and-apc-3-1- 10 – hakre 2012-06-21 22:16:12