Laravel lumen не спасает нужный часовой пояс - PullRequest
0 голосов
/ 24 октября 2018

Все, кто я новичок в Laravel Lumen Framework. Я использую Laravel Lumen 5.4.7, и моя версия PHP - 7.0. У меня проблема при сохранении часового пояса в базе данных с помощью веб-API Laravel Lumen. Я изменил свое местное времязона в файле .env

APP_TIMEZONE=Asia/karachi

Когда я просто повторяю этот код

date('Y-m-d H:i:s')

или этот

\Carbon\Carbon::now()

обе строки кода возвращают мне мое текущее местное времяно когда я сохраняю этот часовой пояс в базе данных для полей «create_at» и «updated_at». Это сохраняет неправильный часовой пояс. Почему это происходит? Я использую эту строку кода для сохранения данных в базе данных

$order_data=array(
        'amount'=>35,
        'updated_at' =>\Carbon\Carbon::now(),
        'created_at' =>\Carbon\Carbon::now()
    );
DB::table('orders')->insertGetId($order_data);

Я также попробовал эту строку кода, чтобы сохранить данные

DB::table('orders')->insert($order_data);

Но все же у меня был неправильный часовой пояс в базе данных в полях create_at и updated_at. Затем я также обновил свой код для использования Elequont, для этого я создалмодель под названием "Порядок", но в базе данных по-прежнему неправильный часовой пояс. Мой код Elequont следующий.

$order_data=array(
        'amount'=>35,
        'updated_at' =>\Carbon\Carbon::now(),
        'created_at' =>\Carbon\Carbon::now()
    );   
Order::create($order_data);

Я слишком много пытался устранить эту проблему. Но пока не получилось.Помогите мне, почему Lumen не сохраняет текущий часовой пояс в базе данных?

1 Ответ

0 голосов
/ 24 октября 2018

Попробуйте добавить 'timezone' => env('APP_TIMEZONE', "UTC") к вашему config/app.php и запустить php artisan cache:clear после этого.

Также попробуйте добавить DB_TIMEZONE=+05:00 в ваш файл .env (скорректированный с учетом смещения UTC, конечно)

...