PHP - 内爆中的数组

时间:2013-12-15 03:08:29

标签: php mysql arrays

我正在尝试将数组放入查询中,但我不起作用。我用implode()绑它然后它给了我“在第26行的数组到字符串转换”。为什么?用json_encode解决了......

感谢您的帮助!

$sql = mysql_query("SELECT follows
            FROM follow 
             WHERE follower LIKE '".$id."'") or die (mysql_error());

if(mysql_num_rows($sql) < 1){
    echo "<br/>";
    echo "Follow someone";
} else {
    //Put all the id's of the users the user is following in an array. 
    $i = 0;
    $user_follows = array();
    while ( $row = mysql_fetch_assoc($sql) )
        {
            $user_follows[$i] = $row;
            $i++;
        }

    $user_follows = implode(" , ", $user_follows);
    echo $user_follows;
}

1 个答案:

答案 0 :(得分:2)

implode的第二个参数必须是字符串数组。但你在做:

$user_follows[$i] = $row;

由于$row是一个数组,所以你要创建一个数组数组(一个二维数组),而不是一个字符串数组。那应该是:

$user_follows[] = $row['follows'];

您不需要$i变量,分配给$array[]会向数组添加新元素。