my PDO fetch returns everything as a string.

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

I have a user class with id (int) and username (varchar).

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

When I try the following sql request

当我尝试以下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);

and var_dump($user_data), the id parameter is a string. How can I make it so PDO respects the correct datatypes from mysql ?

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

1 个解决方案

#1


3

You could use a different fetch_style. If you have a user class, you could force PDO to return a instance of the User class with

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

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

You can now take care of properties validations and casting inside the User class, where it belongs.

您现在可以处理属性验证并在其所属的User类内部进行转换。

Related:

  • PHP PDO: Fetching data as objects - properties assigned BEFORE __construct is called. Is this correct?
  • PHP PDO:将数据作为对象获取 - 调用BEFORE __construct分配的属性。它是否正确?

  • PDO PHP Fetch Class
  • PDO PHP Fetch Class

更多相关文章

  1. 如何在mysql数据库中找到类似的二进制字符串?
  2. 关于如何更好的监听元素属性的变化(转)
  3. SQL从结果数据库中选择subCode及其得分,并将其输出为一个字符串
  4. JavaScript 中 Object ,Prototype 相关的属性和方法
  5. [JavaScript] 将字符串数组转化为整型数组
  6. Dojo:不能在AccordionContainer.js中读取未定义的属性“h”。
  7. JavaScript 字符串函数 之查找字符方法(一)
  8. ng- repeat显示的行等于no属性,甚至不显示html视图上的数据
  9. 范围变量值的变化没有反映在我的字符串中

随机推荐

  1. 怎样使用React Context API [每日前端夜
  2. 7个开放式的 HTML 面试题及回答策略 [每
  3. 尝鲜 ES2019 的新功能 [每日前端夜话0x38
  4. 表弟的数学题,我竟然用了python才解出来
  5. 7 个开放式 CSS 面试题及回答策略 [每日
  6. 在北京看场雪为什么这么难?
  7. 用python对2019年二手房价格进行数据分析
  8. 基于 Babel 的 npm 包的最小化设置 [每日
  9. 一文学懂 TypeScript 的类型 [每日前端夜
  10. 通过 Web 控制蓝牙设备:WebBluetooth入门