- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
当使用 PDO::PARAM_INT 传递字符串时,PHP 7.2 中的行为似乎发生了变化。在版本 7.1 中更新的值和传递的字符串是相同的,在 PHP 7.2 中更新的值是“3”(见下面的例子)。
当然,我知道使用 PDO::PARAM_INT 传递字符串是错误的,但我想知道为什么在 PHP 更新日志中找不到任何内容以及为什么没有抛出异常或警告。
有谁知道这是否是理想的行为?
$sql = "UPDATE test SET name = :name WHERE id = 1";
$update = $db->prepare($sql);
$update->bindValue(':name', '3hgsf5-458752shUGVZCF', PDO::PARAM_INT);
$update->execute();
最佳答案
这是固定 https://bugs.php.net/bug.php?id=73234 的副作用
https://github.com/php/php-src/commit/32b6154a61fae820386527f3019f8c5937fc5d27
关于php - PHP 7.1 和 PHP 7.2 中的 PDO::PARAM_INT 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54413798/
当与 $db->quote() 函数一起使用时,PDO::PARAM_INT 是否执行任何功能?例如$db->quote($user['id'], PDO::PARAM_INT)? 似乎是这样,因为即
以下是我的 MySQL 存储过程: DROP PROCEDURE IF EXISTS sp_authenticate; CREATE PROCEDURE sp_authenticate(IN user
有没有办法在PDOStatement::execute中指定PDO::PARAM_INT? 我习惯做以下事情...... $STH = $DBH->prepare('INSERT INTO items
在Mysql查询中添加PDO::PARAM_INT或PDO::PARAM_STR有什么意义吗? $sql = 'SELECT TagId FROM tagthread WHERE ThreadId
无论我将什么值/数据类型对传递给 $pdo->quote($value, $type);,它总是将其作为字符串引用: echo $pdo->quote('foo', PDO::PARAM_STR);
当使用 PDO::PARAM_INT 传递字符串时,PHP 7.2 中的行为似乎发生了变化。在版本 7.1 中更新的值和传递的字符串是相同的,在 PHP 7.2 中更新的值是“3”(见下面的例子)。
我是一名优秀的程序员,十分优秀!