我正在使用PHP 5.3并且已经阅读了很多关于这个问题的材料,但仍然无法解决问题。
我想使用php将生日01/10/1945从excel导入mysql 无论我试过什么都没有给我结果(我得到一个负数)
这是我尝试的最后一个解决方案:
$ data是excel文件(我正在使用excel reader类)
$date_of_birth = ($data->sheets[0]['cells'][$i][11] - 25569) * 86400;
结果是-2207692800
我在做什么呢?
答案 0 :(得分:4)
在Unix时代之前的日期在PHP中被表示为否定,所以你没有做错任何事
当您在时间戳上使用任何date time
函数时,您将获得正确的值。
答案 1 :(得分:1)
为什么要将MSExcel日期转换为(不兼容的)unix时间戳以便将数据放入MySQL?走直接路线:
$qry="INSERT INTO birthdays (person, birthday)
VALUES ('$person', 18991231000000 + INTERVAL "
. $data->sheets[0]['cells'][$i][11] . " DAY)";
(存储在MSExcel中的整数值是自1899年12月31日以来的天数)