php - Zend Framework Mysql WHERE IN 子句

标签 php mysql zend-framework where-in

使用 zend 框架我使用了一个查询,有一个 IN 子句,这是我的查询

       $select->where('p.brandid  IN (?)',$details[brand]);

在上面的查询中,$details[brand] 的值类似于这个数组 (1,2,3)。

实际上查询必须返回与这个数组(1,2,3)相关的所有值。

但我的查询返回与上述数组 (1,2,3) 中存在的第一个值相关的结果。即 1 单独其他 2,3 不被考虑。

当我打印这个查询时,它显示如下

             [where] => Array
               (
                [0] => (p.brandid  IN ('1,2,3'))
              )

任何人都可以告诉我我犯了什么错误或解决这个问题的方法..

最佳答案

这是因为您的查询格式错误 p.brandid IN ('1,2,3') 而不是 p.brandid IN (1,2,3) 你可以尝试在 php 中使用 implode 函数

$select->where('p.brandid  IN (?)',implode(",",$details[brand]));

关于php - Zend Framework Mysql WHERE IN 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11574142/

相关文章:

php - MySQL 从特定列进行 SELECT 查询

php - 输出日期与原始日期不同

php - 有没有办法在 PHP 中不使用 !empty 三次?

php - Zend 分页器变量

php - "["怎么可能是 PHP 语言规范中的运算符?

mysql - 如果mysql中不存在则创建插入

PHP CodeIgniter WHERE 子句语句

javascript - html、javascript、php 和 MySQL 的问题

javascript - 根据 Action 添加一个js文件。曾德

zend-framework - Zend 框架 : How do I set a custom validator on a form element?