【发布时间】:2013-04-27 20:39:30
【问题描述】:
我的脚本在我的 xampp 上运行良好。现在我尝试上传到服务器上,但它直接吐了一个
解析错误:语法错误,意外'['
在我的脸上。 :(
它嘲讽的是这一行:
$item = $xml->xpath($path)[0];
而且我不知道出了什么问题。我试图查看 php 5.3 更改日志,但没有找到任何相关信息。 (因为我在服务器上有 5.3,而在 xampp 上它是旧版本)
整个代码块如下所示:
$path = '//item[@id="'.$id.'"]';
if ($xml->xpath($path)) {
$item = $xml->xpath($path)[0];
} else {
die('<p class="error">Script Error: Code 101 - Please contact administrator</p>');
}
感谢您的帮助,我无法通过谷歌搜索 [ 并且不知道它来自哪里,因为在 xampp 上它工作正常
【问题讨论】:
-
你需要 5.4 才能像这样使用它。在你的情况下
$item = $xml->xpath($path); $item[0]; -
“从 PHP 5.4 开始,可以直接对函数或方法调用的结果进行数组取消引用。之前只能使用临时变量。” php.net/manual/en/language.types.array.php
-
$item = $xml->xpath($path0);我不知道,但这有用吗?
-
你需要把
$item = $xml->xpath($path)[0];改成$item = (string)$xml->xpath($path)[0]->value; -
我不知道为什么这个问题与这个问题重复:PHP syntax for dereferencing function result
标签: php php-5.3 parse-error