首页 > 解决方案 > 需要为现有项目动态更改时区

问题描述

现有项目仅适用于一个国家。但就目前而言,它应该用于多个国家/地区。所以我需要一些地方来改变时区。我决定仅在伦敦/悉尼时区更新和插入。我需要更改所有选择查询的时区。我只是尝试使用中间件,但我无法实现。请提出您的建议。

Linux 服务器、MySQL、Laravel、Vagrant


namespace App\Http\v2018_06_12\Middleware;

use App;
use App\Order;
use Closure;

class LocaleMiddleware
{
    public function handle($request, Closure $next, $guard = null)
    {
        $locale = ($request->hasHeader('locale')) ? $request->header('locale') : 'uk';

        $timezone = env('APP_TIMEZONE');

        if ('aus' == $locale) {
            $timezone = 'Australia/Sydney';
        }
        config(['app.timezone' => $timezone]);
        date_default_timezone_set($timezone);

        print_r(Order::select('delivery_time')->orderBy('id', 'DESC')->first()->toArray());
        return $next($request);
    }
}

标签: mysqllaraveleloquenttimezone

解决方案


推荐阅读