Laravel: установить временные метки от datetime до настоящего времени как int

Я создаю приложение Laravel. Раньше я проектировал базу данных с типами данных datetime для created_at и updated_at, но мой друг предложил мне использовать метку времени вместо даты и времени, потому что это хорошо для разных часовых поясов.

Это хорошая идея использовать метку времени вместо формата даты и времени? Будут ли проблемы с производительностью? Если «Нет», то как мы можем изменить формат меток времени по умолчанию с даты и времени на метку времени глобально в приложении laravel.

Например (по умолчанию):

$model->created_at = "yyyy-mm-dd h:i-s";
$model->updated_at = "yyyy-mm-dd h:i-s";

Целочисленная временная метка:

$model->created_at = 1523246567;
$model->updated_at = 1523246567;
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
3
0
2 255
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

К сожалению, я не могу ответить на ваши первые два вопроса, но Laravel предоставляет простой способ изменить формат, в котором хранятся ваши даты.

В документации Мутаторы свиданий сказано, что можно установить свойство $dateFormat для вашей модели следующим образом:

/**
 * The storage format of the model's date columns.
 *
 * @var string
 */
protected $dateFormat = 'U';

Формат 'U' будет «Секунды с эпохи Unix». Другие форматы доступны в файле документация даты php.

Вам также необходимо изменить миграцию вашей модели. Замените $table->timestamps(); на $table->unsignedInteger('created_at'); и $table->unsignedInteger('updated_at');.

Чтобы использовать определенный формат даты «глобально», то есть для всех ваших моделей, вы можете либо установить формат даты в базовой модели и позволить всем вашим моделям наследовать эту модель, либо использовать признак. См. пример этот вопрос.

Другие вопросы по теме