我确实有一个表 - 我们称之为表属性:
id |颜色 |尺寸
1 |红色|升
2 |红色|特大号
3 |蓝色|升
4 |蓝色| XL ...
现在我有一个如下所示的数组:
$parameters[0] = array('red', 'L');
$parameters[1] = array('red', 'XL');
$parameters[2] = array('blue', 'L');
如果我想让结果像这样,那么我在 RAW-SQL 中的查询必须是什么样子:
$result = array(1,2,3);
最佳答案
如果使用 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
与execute
一起使用。
关于php - 使用 count( (array) $test) > 1 作为参数进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44069738/