PHP丢失MySQL结果的字段数据类型(一切都变成字符串)

时间:2011-03-10 23:09:05

标签: php mysql json types

以下代码显示我的测试表中的datetime,float和decimal等字段都在PHP中以字符串形式返回。

$sql = 'SELECT * FROM table LIMIT 1';
$result = mysql_query($sql) or die(mysql_error());  
$row = mysql_fetch_array($result);
var_dump($row);

为什么PHP无法识别并使用MySQL数据库中字段的正确数据类型?

我的测试系统使用PHP 5.3.2和MySQL 5.1.44运行Mac OS X. 我通常有UTF8编码数据,并尝试过InnoDB和MyISAM数据库类型。

2 个答案:

答案 0 :(得分:2)

PHP本身并不以字符串的形式处理MySQL DATETIME字段。您需要查看php date()函数,以便以适合您需要的方式对其进行格式化。

答案 1 :(得分:1)

mysql_ *不了解数据类型。我相信如果你使用mysqli它会识别一些数据类型。

http://php.net/manual/en/book.mysqli.php