在我的php中,我有一个这样的数组:
Array ( [0] => 3 [1] => 5 )
我做的是在数组中使用了json_encode($array, JSON_UNESCAPED_UNICODE);
,结果如下:
["3","5"]
$array = json_encode($array, JSON_UNESCAPED_UNICODE);
现在,在执行此操作后,我在选择查询中使用它,其中IN在where子句中如下:
SELECT tablecode FROM table WHERE id IN $array
现在我得到了:
您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“[”3“,”5“]'附近使用正确的语法
我遵循了如何使用IN
,但仍然会发生这种情况。
如何在带有IN
答案 0 :(得分:1)
也不需要使用json_encode()
。只需使用implode()
以逗号分隔。
$comma_separated_number = implode(', ', $array);
SELECT tablecode FROM table WHERE id IN ($comma_separated_number);