PHP If语句 - >

时间:2013-09-19 20:15:06

标签: php json

这是我的问题

CODE:

$response = json_decode($data);

$arr = (array) $response;

if(is_array($arr['reviews'])){

foreach($arr['reviews'] as $review){

if ($review->rating == "0") {echo "<div class="0stars"></div>\n";}

} 

当它到达if部分

时,它会引发错误
Parse error: syntax error, unexpected '0' (T_LNUMBER), expecting ',' or ';' in /home....

我试过了:

$reviewstar = $review->rating;
if ($reviewstar == "0") {echo "<div class="0stars"></div>\n";}

以及许多其他选择......

我该怎么做?我需要再次排队吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

此行中的引号已被破坏:

if ($review->rating == "0") {echo "<div class="0stars"></div>\n";}

将其更改为:

if ($review->rating == "0") {echo "<div class=\"0stars\"></div>\n";}

答案 1 :(得分:0)

您正在尝试强制转换为数组,但在此处使用对象类型访问:

$review->rating

如果你想使用一个对象数组,不要强制转换为数组(或者建议使用json_decode中的强制数组。

最重要的是要了解JSON字符串的结构以及在解码为对象/数组时它的行为方式。

看起来您可能还没有从第一个if声明中删除花括号。