mysql - 需要为现有项目动态更改时区
问题描述
现有项目仅适用于一个国家。但就目前而言,它应该用于多个国家/地区。所以我需要一些地方来改变时区。我决定仅在伦敦/悉尼时区更新和插入。我需要更改所有选择查询的时区。我只是尝试使用中间件,但我无法实现。请提出您的建议。
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);
}
}
解决方案
推荐阅读
- r - 将多个 .xlsx 文件的特定列读入 R
- java - 来自观察者的可变列表的 ConcurrentModificationException
- go - 如何在不使用 go-gorm (struct) 中的模型的情况下创建记录?我可以检索记录,但要创建它?
- python - 无法在 cmd 上运行 ipython
- json - 为什么 Jackson 为 @JsonSerializer/@JsonDeserializer 注释类创建每个 Serializer/Deserializer 实例
- javascript - 为什么我的 axios 并不总是在 React 中工作
- python - Pyrebase 未在 python 3.7.1 中成功安装
- bitcoin - 为什么coinbase的交易中有3个输出?
- racket - 在参数列表上调用“和”
- flutter - 如何在颤动中显示带有时区的日期和时间