0

使用 FQL,我以这种方式获得生日:

select uid, first_name, last_name, birthday_date from user where uid=me()

但随后以这种格式显示:

02/03/1942

如果我将它保存在我的 mysql 数据库的 DATE 字段中,它会保存 0000-00-00

如何将这个日期保存在我的 mysql 数据库中?

4

1 回答 1

2

签出这个 - http://php.net/manual/en/function.date-create.php

<?php
  $test = new DateTime('02/31/2011');
  echo date_format($test, 'Y-m-d H:i:s'); // 2011-03-03 00:00:00
  $test = new DateTime('06/31/2011');
  echo date_format($test, 'Y-m-d H:i:s'); // 2011-07-01 00:00:00
?>

您可以为DateTime()构造函数提供一个类似于 Facebook 返回的字符串,然后使用该对象来格式化您需要的日期格式。


或者,如果您想要一个仅包含 MYSQL 解决方案的选项,您可以简单地传递原始日期STR_TO_DATE并为其提供当前格式。这将以正确的方式为您格式化DATE字段类型的日期。

INSERT INTO  `test` (  `date` ) 
  VALUES (
    STR_TO_DATE(  '02/03/1942',  '%d/%m/%Y' )
  )

查看STR_TO_DATE() 的文档以获取更多详细信息。

于 2012-05-18T10:46:27.463 回答