以下代码显示我的测试表中的日期时间、 float 和小数等字段在 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数据库类型。
最佳答案
PHP 本质上不会以字符串以外的任何方式处理 MySQL DATETIME 字段。您需要查看 php date() 函数以适合您需要的方式格式化它。
关于PHP 丢失 MySQL 结果的字段数据类型(一切都变成字符串),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5267044/