我有一个表单字段,它返回一个逗号分隔的字符串,我想将它传递给PHP PDO MySQL查询IN操作,但IN操作要求这些值由逗号分隔(与我的字符串分隔值的)。将值传递给PDO准备语句中的MySQL IN操作?
我该怎么做?
$values = $_POST['values']; # '10,5,4,3' (string)
$query = "SELECT * FROM table WHERE id IN (:values)";
$data = array(':values' => $values);
+1不错,我会然而,做到以下几点:`$值= array_filter(array_map( '微调',爆炸( '',$值) ),'is_numeric');`,你永远不知道什么来自用户输入... – 2011-01-18 23:02:22
你的语法反转了'rtrim`:应该是`rtrim(str_repeat('?,',count($ values)), ',');`。但除此之外,这是我一起去的解决方案。谢谢! – neezer 2011-01-18 23:37:37