将准备好的语句与 pdo 一起使用时,关闭仿真是否有任何副作用?我正在使用 select * 并限制需要作为 int 而不是字符串处理的结果。我可以做两件事之一。
$conn->setAttribute( PDO::ATTR_EMULATE_PREPARES, false );
或者用参数类型显式绑定这些变量:
$stm = $pdo->prepare('SELECT * FROM table LIMIT ?, ?');
$stm->bindParam(1, $limit_from,PDO::PARAM_INT);
$stm->bindParam(2, $per_page,PDO::PARAM_INT);
$stm->execute();
$data = $stm->fetchAll();
有什么优点或缺点吗?显然,关闭仿真会节省大量绑定。