我正在尝试将数组放入查询中,但不起作用。我将它与 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;
}
implode
的第二个参数必须是字符串数组。但你正在做:
$user_follows[$i] = $row;
由于
$row
是一个数组,因此您正在创建一个数组的数组(二维数组),而不是一个字符串数组。应该是:
$user_follows[] = $row['follows'];
您不需要
$i
变量,分配给 $array[]
会将新元素附加到数组中。