php – Doctrine DBAL – WHERE IN数组中带有附加参数

前端之家收集整理的这篇文章主要介绍了php – Doctrine DBAL – WHERE IN数组中带有附加参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用示例文档,我能够得到这样的查询工作.
SELECT
f.foo,b.bar
FROM Foo f
LEFT JOIN Bar b
WHERE 
f.foo = 20
AND b.bar IN ?

使用DBAL,此代码返回结果.

$result = $this->connection->executeQuery(
            $sql,array($bar_array),array(\Doctrine\DBAL\Connection::PARAM_INT_ARRAY)
        )->fetchAll();

我想搜索f.foo作为一个整数参数,以及查找IN语句,但我还没有想出如何让它运行,因为所有的示例文档都将数组作为唯一的参数.

参数和类型是并行数组.所有你应该做的是添加你的占位符的f.foo值,并添加正确的PDO类型在参数.
$sql = "SELECT f.foo,b.bar
        FROM Foo f LEFT JOIN Bar b
        WHERE  f.foo = ? AND b.bar IN (?)";

$result = $this->connection
    ->executeQuery($sql,array($foo,$bar_array),array(
            \PDO::PARAM_INT,\Doctrine\DBAL\Connection::PARAM_INT_ARRAY
     ))->fetchAll();

您可以使用手册read了解更多信息.

猜你在找的PHP相关文章