我在一个教堂网站上工作,该网站在 1970
之前有很多事件,这些事件从 1001
开始到今天,我如何将日期存储在 中MySQL
?
$y = $_REQUEST["year"];
$m = $_REQUEST["month"];
$d = $_REQUEST["day"];
$date = date("Y-m-d", "$y/$m/$d");
这仅适用于 1970
之后的日期,如何存储今年之前的日期?
在 MySQL
中我应该有什么样的数据类型?现在我将我的列设置为 date
类型
最佳答案
DATE
没问题。它可以存储值 from 1000 to 9999 AD .
The DATE type is used when you need only a date value, without a time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.
它与 PHP 的旧式日期函数(date()
、strtotime()
....)不同,它们使用 UNIX 时间戳,并且在使用 32-位值,仅限于 1970 年到 2038 年的日期范围。
要处理超出此范围的日期值,请使用 PHP 5 的 new object-oriented DateTime
class .
关于php - MySQL:1970 年之前的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4466546/