Как создать значение SQLite Timestamp в PHP - PullRequest
4 голосов
/ 01 апреля 2011

Я хочу сгенерировать метку времени в PHP, а затем сохранить это значение в SQLite.

Вот код:

$ creation_date = date ("YYYY-MM-DDЧЧ: ММ: СС ", время ());

Вот что хранится в БД (что выглядит неправильно): 21.11.2020 12:39:49

Как изменить код для правильного хранения текущей даты / времени в SQLite

Ответы [ 4 ]

8 голосов
/ 01 апреля 2011

Почему бы просто не обновить ваш запрос SQLite для использования date('now')? ссылка

Но в PHP вы можете использовать

$created_date = date('Y-m-d H:i:s');
2 голосов
/ 22 сентября 2011

Я только что реализовал это для моего собственного проекта ..

Мое решение состояло в том, чтобы использовать формат времени UTC , официально указанный для сети: RFC3339 . Вы можете использовать любую из следующих констант формата времени PHP :

  • DATE_RFC3339
  • DATE_W3C
  • DATE_ATOM

Пример: * ** 1022 тысячу двадцать одна * $sqlite_timestamp = date(DATE_RFC3339); echo "My SQLite timestamp = ".$sqlite_timestamp; Лучшая часть - алфавитно-цифровой порядок, соответствующий порядку даты, поэтому вы можете использовать ORDER BY операторы SQL в полях даты!

0 голосов
/ 01 апреля 2011
  $created_date = date('Y-m-d H:i:s');
  echo $created_date ."<br />\n";

  $created_date = date('l, F jS, Y - g:ia');
  echo $created_date ."<br />\n";

  $created_date = date('n/j/y H:i:s');
  echo $created_date ."<br />\n";

  $created_date = date('r'); // RFC 2822 formatted date
  echo $created_date ."<br />\n";

  $created_date = date('c'); // ISO-8601 formatted date
  echo $created_date ."<br />\n";

Вывод может быть:

2011-04-01 19:33:40
Friday, April 1st, 2011 - 7:33pm
4/1/11 19:33:40
Fri, 01 Apr 2011 19:33:40 +0200
2011-04-01T19:33:40+02:00

Помните, что функция date () зависит от часового пояса по умолчанию, установленного в конфигурации PHP. Вы всегда можете проверить его, используя echo date_default_timezone_get(); или установить его date_default_timezone_set('TIMEZONE_IDENTIFIER');, где TIMEZONE_IDENTIFIER - один из списка поддерживаемых часовых поясов .

0 голосов
/ 01 апреля 2011

Как проверить, что хранится в памяти?Кроме того, каков тип данных столбца в базе данных?Знаете ли вы, что SQLite не имеет типа , поэтому все значения хранятся в виде строк или целых чисел?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...