这是我的问题
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";}
以及许多其他选择......
我该怎么做?我需要再次排队吗?
谢谢!
答案 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
声明中删除花括号。