当数组为空时,SQL IN运算符错误

时间:2014-03-28 14:29:40

标签: php sql sql-in

SQL IN OPERATOR

我使用IN运算符,因为我在SQL语句中使用数组。

例如:

$city[1] = "'Paris'";
$city[2] = "'London'";
$cityString= implode(", ", $city);

SELECT * FROM Customers
WHERE City IN ($cityString);

但在我的代码中,我使用了我的GET或POST数组的值。但是当数组为空时没有值,所以我的SQL语句将不起作用。如果没有if语句并且有数千个SQL语句的列表,我怎么能解决这个问题。

1 个答案:

答案 0 :(得分:2)

您可以检查数组是否为空:

if(!empty($city)) {
    $query = "SELECT * FROM Customers WHERE City IN ($cityString)";
    $result = mysql_query($query);

} else {
    // .. do something else ?
}