这个PHP代码行是否可能
if ($this->greatestId()["num_rows"] > 0)
在PHP 5.5中运行并在5.3 ??
中返回错误PHP Parse error: syntax error, unexpected '[' in /var/www/app/AppDAO.php on line 43
如何将其更改为在PHP 5.3下工作?
答案 0 :(得分:15)
Array dereferencing在PHP 5.4中可用。这就是为什么这在PHP 5.3中不起作用的原因。所以你有一个额外的步骤,你需要从函数调用中获取数组值,然后你可以使用它:
$variable = $this->greatestId();
if ($variable["num_rows"] > 0){
// do stuff
}
答案 1 :(得分:2)
你不能像PHP 5.3中的if ($this->greatestId()["num_rows"] > 0)
那样使用以下代码。
$var = $this->greatestId();
if ($var["num_rows"] > 0){
// your code
}
答案 2 :(得分:1)
如PHP 5.4中所述:
从PHP 5.4开始,可以对a的结果进行数组解除引用 函数或方法直接调用。之前它只能使用一个 临时变量。
在PHP 5.3中不可能这样做,你需要使用一个变量。