Php PDO:使用多个WHERE子句将数组绑定到IN()条件?
基于 对于使用多个WHERE子句,上述问题没有任何答案 第二个最佳答案仅适用于一个WHERE子句: 如果我添加一个WHERE子句,它将生成一个空结果或错误Php PDO:使用多个WHERE子句将数组绑定到IN()条件?,php,arrays,pdo,prepared-statement,where-in,Php,Arrays,Pdo,Prepared Statement,Where In,基于 对于使用多个WHERE子句,上述问题没有任何答案 第二个最佳答案仅适用于一个WHERE子句: 如果我添加一个WHERE子句,它将生成一个空结果或错误 $qMarks = str_repeat('?,', count($ids) - 1) . '?'; $sth = $db->prepare("SELECT * FROM myTable WHERE id IN ($qMarks) AND locationid=?"); $sth->execute(array($ids, ?));
$qMarks = str_repeat('?,', count($ids) - 1) . '?';
$sth = $db->prepare("SELECT * FROM myTable WHERE id IN ($qMarks) AND locationid=?");
$sth->execute(array($ids, ?)); // Also tried $sth->execute($ids, $location_id) and $sth->execute($ids, array($location_id));
请告知。接受单个参数数组。您需要执行以下操作:
$sth->execute(array_merge($ids, [$location_id]));
$sth->execute(array_merge($ids, [$location_id]));