PHP致命错误:For循环中不支持的操作数类型

时间:2017-02-14 17:28:29

标签: php for-loop fatal-error

由于某种原因,我的For循环出错了。  我只想在php中向后翻一个数组。

浏览器中的错误是:

  

致命错误:第18行/var/html/modules/getChat.php中不支持的操作数类型

本规范第1部分第1行:

以下是代码:

for($x = sizeof($result-1); $x > 0; $x--)
{
    echo '<div class="message '.$result[$x].'"> <img src="'.$result[$x].'" /><span class="name">'.$result[$x].'</span>
    <p>'.$result[$x].'</p>
    </div>';
}

我希望你能帮忙

由于

1 个答案:

答案 0 :(得分:1)

$result是一个数组,从数组中减去1没有任何意义。您可能想要使用它:

for ($x = sizeof($result) - 1; $x > 0; $x--) // ...

是的,似乎你无意中跳过了数组的第一个元素。如果是,请修复条件($x >= 0) - 或者将整个循环压缩为while

$x = count($result);
while($x--) {
  // output with $result[$x]
}

如果这不是瓶颈(很可能不是),你最好用array_reverse来展示代码的真实意图:

 foreach (array_reverse($result) as $el) {
    // output with $el
 }