我一直在使用clone关键字来复制像这样的对象:
$x = clone $obj;
根据the manual。
这在浏览器访问时工作正常。 phpinfo()
报告PHP版本5.2.6。
但是当由cron运行或从CLI运行时我得到
来自clone关键字的“解析错误:语法错误,意外T_VARIABLE”
。
php -v
报告PHP 4.4.9(cli)
版本冲突时出现此错误吗?
如果我在脚本中使用clone()
,请执行以下操作:
$_SESSION['user'] = clone($userObject);
使用clone关键字时,$_SESSION['user']
出现奇怪的间歇性问题。
这对任何人都有意义吗?
有什么建议吗?
答案 0 :(得分:3)
似乎clone $foo
关键字仅适用于PHP 5及更高版本。
另外,如果您仍在使用PHP 4.4.9,那可能是一个更大的问题。
答案 1 :(得分:1)
结果是服务器安装了4和5,CLI报告4.4.9只是由于PATH顺序:
来自支持:
“在shell中运行”php -v“命令将始终返回V4。这是因为我们在服务器上有两个单独的PHP安装。一个用于V4,一个用于V5,以及PHP 4解释器首先出现在你的PATH环境变量中。如果你想通过shell使用V5,你需要确保使用完整的路径“