MySQL: работа с датами до 1970 года
Я работаю на сайте церкви, который имеет много событий до 1970
, эти события начинаются с 1001
на сегодня, как я могу хранить даты в MySQL
?
$y = $_REQUEST["year"];
$m = $_REQUEST["month"];
$d = $_REQUEST["day"];
$date = date("Y-m-d", "$y/$m/$d");
это работает только для дат после 1970
, Как я могу хранить даты до этого года?
какой тип данных я должен был в MySQL
? Теперь я установил свою колонку в date
тип
1 ответов
DATE
- Это хорошо. Он может хранить значения от 1000 до 9999 AD.
дата тип используется, когда вам нужно только значение даты, без времени. MySQL извлекает и отображает значения даты в формате "гггг-ММ-ДД". Поддерживаемый диапазон-от '1000-01-01' до '9999-12-31'.
это отличается от функций даты старого стиля PHP (date()
, strtotime()
....) они работают с метками времени UNIX и при использовании 32-разрядных значений ограничены датой в диапазоне от 1970 до 2038.
чтобы работать со значениями дат за пределами этого, работайте с PHP 5 новый объектно-ориентированный DateTime
класс.