gpt4 book ai didi

php - PDO 位置和命名参数作为同一个准备查询的一部分?

转载 作者:IT老高 更新时间:2023-10-29 00:21:54 26 4
gpt4 key购买 nike

我正在学习 PDO。

这是我的sql(WHERE中可以出现的参数个数是可变的)。

    SELECT
ID, title

FROM
table

WHERE
something = ?

ORDER BY
:sort :dir

LIMIT
:start, :results

这是我的代码:

        $query = $conn->prepare($sql);

if ($parameters) {

$i = 0;
foreach ($parameters AS $parameter) {

$i++;
$query->bindParam($i, $parameter);

}

}

$query->bindParam(':start', $pagination['start'], PDO::PARAM_INT);
$query->bindParam(':results', $pagination['results'], PDO::PARAM_INT);
$query->bindParam(':sort', $pagination['sort']);
$query->bindParam(':dir', $pagination['dir']);

$query->execute();

...这是它生成的异常:

 Invalid parameter number: mixed named and positional parameters

是否不可能在同一个查询中组合位置参数和命名参数?还是我遗漏了什么?

谢谢!

最佳答案

是的,这是不可能的。

PDO.prepare

您不能在同一 SQL 语句中同时使用命名参数标记和问号参数标记;选择一种或另一种参数样式。

关于php - PDO 位置和命名参数作为同一个准备查询的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3108571/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com