以下代码显示我的测试表中的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数据库类型。
答案 0 :(得分:2)
PHP本身并不以字符串的形式处理MySQL DATETIME字段。您需要查看php date()函数,以便以适合您需要的方式对其进行格式化。
答案 1 :(得分:1)
mysql_ *不了解数据类型。我相信如果你使用mysqli它会识别一些数据类型。