При передаче строки с помощью 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();