php - 如何使用 PDO 从 MySQL 获取正确的数据类型?

标签 php mysql pdo

<分区>

我的 PDO 提取以字符串形式返回所有内容。

我有一个带有 id (int) 和用户名 (varchar) 的用户类。

当我尝试下面的sql请求时

$db->prepare('SELECT * FROM users WHERE id=:id_user');
$db->bindParam(':id_user', $id_user);
$db->execute();
$user_data = $db->fetch(PDO::FETCH_ASSOC);

和var_dump($user_data)一样,id参数是一个字符串。我怎样才能使 PDO 尊重来自 mysql 的正确数据类型?

最佳答案

您可以使用不同的 fetch_style 。如果你有一个 User 类,你可以强制 PDO 返回一个 User 类的实例

$statement->fetchAll(PDO::FETCH_CLASS, "User");

您现在可以在它所属的 User 类中处理属性验证和转换。

相关:

关于php - 如何使用 PDO 从 MySQL 获取正确的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14977115/

相关文章:

php - 如何拦截Laravel HTTP错误响应

php - 如何在使用 UNION 时删除重复记录

php - 简单的正则表达式帮助 php

php - password_verify() 总是返回 false

php - 使用 PDO 加载 CSV 文件会导致语法错误

javascript - PHP - 使用 Javascript 和 PHP 上传多个文件

mysql - mysql数据库重建后如何清空或清理一些系统变量值?

php - 使回显结果可点击并运行新查询

php - 在 Windows 上为 MySQL 安装 PDO 驱动程序

php - 为什么此 SQL SELECT 语句无法检索我刚刚插入的行?