Carbon
インスタンスから offset を取得して、それを PDO オプションで渡す。
- app/config/database.php
<?php
use Carbon\Carbon;
$timezoneOffset = sprintf('+%02d:00', Carbon::now()->getOffset() / 3600);
return [
'default' => 'mysql',
'connections' => [
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'database',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'options' => [
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET SESSION time_zone = \'' . $timezoneOffset . '\''
],
],
],
];