PHP foreach循环中的非法字符串偏移量(Facebook应用程序)


PHP Illegal string offset in foreach loops (Facebook app)

我是PHP的新手,我正试图在这里制作一个非常简单的facebook应用程序,它可以显示随机数量的朋友的个人资料图片(9个朋友)。它确实显示了我想要的东西,除了一个橙色的错误符号,上面写着"(!)警告:'id'中的非法字符串偏移…"

顺便说一句,这是我的代码:(我已经调用了facebooksdk并定义了$contacts)

<?php
if(isset($contacts)){ 
$i = 1;
echo '<table>';
foreach ($contacts as $friends) {
shuffle($friends);
    foreach ($friends as $value)  {
    echo '<td>';
    echo '<img src ="https://graph.facebook.com/' . $value["id"] . '/picture/>';
    echo '</td>';
    if ($i >= 9) {
        break;
    }                           
    $i = $i + 1;
}}                         
echo '</table>';

} 

?>

非常感谢。我感谢任何提示或线索=D

这只是意味着你的"id"键并不总是存在于每个循环中。添加:

if(isset($value['id'])){
   .
   .
   .
}

就在foreach ($friends as $value) { 之后