PHP 5.3.2-1ubuntu4.2中没有关闭支持

时间:2010-08-09 12:52:23

标签: php php-closures

我刚刚意识到有些PHP无法在一台服务器上正确执行,但在另一台服务器上执行正确。

他们都运行Ubuntu 10.04和PHP PHP 5.3.2(PHP 5.3.2-1ubuntu4.2与Suhosin-Patch(cli)(内置:2010年5月13日20:03:45))

我正在测试使用:

$f = function() {};

var_dump($f);
die();

在有效的服务器上,结果是:

  

对象(关闭)#1(0){}

在没有的那个上,结果是:

  

UNKNOWN:0

我错过了什么?

[编辑]

在同一个文件中有2个闭包似乎存在问题:

<?php
$f = function() {};
$f2 = function() {};

var_dump($f);
var_dump($f2);
die();

输出:

  

UNKNOWN:0
  object(Closure)#1(0){}

1 个答案:

答案 0 :(得分:2)

经过一些谷歌搜索结合ircmaxell对phpinfo的提示后,我得到了eaccelerator的提示。

正确运行代码的服务器正在运行eaccelerator 0.9.6.1,那个不起作用的服务器使用的是0.9.6。

从源代码编译新版本,它解决了我的问题。

谢谢!