如何在 CakePHP 中将整数传递给查询?

问题描述 投票:0回答:1

编辑1:这不是关于LIMIT,这是关于传递一个整数。另一个需要传递数字的函数是IN

编辑 2:我应该使用 PDO::PARAM_INT 吗?


当我这样做时:

$query .= ' LIMIT ? , ? '; $values [] = $offset ; $values [] = $rows ;
在这一行:

$db->fetchAll ( $query , $values);
而不是执行:

SELECT ....... LIMIT 0 , 10;
它尝试执行:

SELECT ....... LIMIT '0' , '10';
导致错误:

错误代码:1064。您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 ''0' ,'10'' 附近使用的正确语法


注 1. 我知道 $params 数组中有一个

limit 选项。.

注2.有一个相关的问题

这里

注3。我尝试过:

$values [] = intval($offset)

$values [] = (int)$offset
,甚至是整数:
$values [] = 10

    

php cakephp pdo
1个回答
0
投票
我不知道 Cake,但在 PDO 中你应该使用

both intval

PDO::PARAM_INT
 - 它们都不能单独使用。

在我的 PDO 包装器中,我修复了这个问题,允许第一个代码无错误地运行,但我怀疑您是否会费心为您的框架实现它

© www.soinside.com 2019 - 2024. All rights reserved.