所以我想将国家/地区代码与地区相匹配。
if ($region == 'eu') {
$country = 'nl', 'be'; etc.. etc..
}
然后我希望得到所有用户WHERE countrycode是上述之一。
$countryGet = $db->prepare("SELECT countrycode FROM `users` WHERE countrycode = :countrycode DESC LIMIT 100");
$countryGet->execute(array(
':countrycode' => $country,
));
也许我想要复杂但我无法找到一个很好的方法来做到这一点。提前谢谢。
答案 0 :(得分:3)
没有好办法做到这一点。我们必须为准备好的陈述的安全付出代价,这是一个不幸的代价。
试试这个:
if( $region == "eu") {
$countries = array("nl","be",...);
}
然后:
$sql = "
SELECT countrycode
FROM users
WHERE countrycode IN (".implode(",",array_fill(0,count($countries),"?")).")
";
$countryGet = $db->prepare($sql);
$countryGet->execute($countries);
如果你有其他参数,它会变得更加混乱,但这应该会给你一个想法。