php 取得Mysql原格式的数据

原创
2016-06-06 20:28:04 788浏览

我在使用php操作mysql的时候, 取得的所有数据都是字符串, 我现在想取得Mysql存储的数据的, 且与它在mysql中定义的类型是一致的, 能不能做到呢?

回复内容:

我在使用php操作mysql的时候, 取得的所有数据都是字符串, 我现在想取得Mysql存储的数据的, 且与它在mysql中定义的类型是一致的, 能不能做到呢?

//try
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 
$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);

有个大体思路,用SHOW COLUMNS FROM table_name 得到数据类型,定义一组php和mysql数据类型的对应关系,循环数据根据这个对应关系将数据依次转义,不知是否可行。

首先,我不会PHP

但是我强烈怀疑你的说法php操作mysql的时候, 取得的所有数据都是字符串

其次,MySQL的数据类型,是MySQL的一套的机制,PHP的数据类型,是PHP的一套机制,两者之间是独立的,但可以映射,然而可能不是所有的MySQL数据类型都能在PHP中找到匹配的类型。

刚刚var_dump尝试了下,的确是都是string类型。
不过php本来就是弱类型语言,个人感觉可以大多数情况可以不必在意数据类型。直接用就好。

php mysql 驱动默认都会把字段的值为string,所以在取出来之后需要自己去转。

现在的php框架中 orm 都是这么做的,根据字段类型做一次转化。

你是不是用了什么框架?用的orm取的数据?

自己再做一次格式化呗

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。