Php 使用计数((数组)$test)进行查询>;1作为参数
我有一个表-我们称之为表属性: id |颜色|大小 1 |红色| L 2 |红色| XL码 3 |蓝色| L 4 |蓝色| XL码 现在我有一个数组,看起来像这样:Php 使用计数((数组)$test)进行查询>;1作为参数,php,mysql,Php,Mysql,我有一个表-我们称之为表属性: id |颜色|大小 1 |红色| L 2 |红色| XL码 3 |蓝色| L 4 |蓝色| XL码 现在我有一个数组,看起来像这样: $parameters[0] = array('red', 'L'); $parameters[1] = array('red', 'XL'); $parameters[2] = array('blue', 'L'); $result = array(1,2,3); 如果我想得到这样的结果,我在RAW-SQL中的查询应该是什么
$parameters[0] = array('red', 'L');
$parameters[1] = array('red', 'XL');
$parameters[2] = array('blue', 'L');
$result = array(1,2,3);
如果我想得到这样的结果,我在RAW-SQL中的查询应该是什么样子的:
$parameters[0] = array('red', 'L');
$parameters[1] = array('red', 'XL');
$parameters[2] = array('blue', 'L');
$result = array(1,2,3);
针对您的问题的原始SQL。现在您可以根据需要进行php实现了
针对您的问题的原始SQL。现在您可以根据需要进行php实现了 如果使用PDO,像这样的东西应该可以工作
$parameters[0] = array('red', 'L');
$parameters[1] = array('red', 'XL');
$parameters[2] = array('blue', 'L');
$where = '';
foreach($parameters as $param) {
$where[] = '(color = ? and size = ?)';
$params[] = $param[0];
$params[] = $param[1];
}
$where = implode(' or ', $where);
将$where
附加到查询中,然后将$params
与执行一起使用
演示:如果使用PDO,像这样的东西应该可以工作
$parameters[0] = array('red', 'L');
$parameters[1] = array('red', 'XL');
$parameters[2] = array('blue', 'L');
$where = '';
foreach($parameters as $param) {
$where[] = '(color = ? and size = ?)';
$params[] = $param[0];
$params[] = $param[1];
}
$where = implode(' or ', $where);
将$where
附加到查询中,然后将$params
与执行一起使用
演示:您的查询是什么?请告诉我们,因为我们不知道您是如何传递参数的?我根本不知道如何传递参数?有没有比做foreach循环更好的方法?废话,小错误!您的查询是什么?请告诉我们,因为我们不知道您是如何传递参数的?我根本不知道如何传递参数?有没有比做foreach循环更好的方法?废话,小错误!