2017-07-13 19 views
1

私はLaravel 5を使用していますが、私はタイムゾーンを動的に変更する問題に直面しています。私は以下の私のコードは、プロバイダからLaravel 5アプリのタイムゾーンが動的に変更されます

機能を示し

class AppServiceProvider extends ServiceProvider 
{ 
    public function boot() 
    { 
     // 
    } 

    public function register() 
    { 
     Config::set('app.timezone', 'Australia/Sydney'); 
    } 
} 

私のコントローラ

use App\Http\Controllers\Controller; 
use Carbon; 
use Config; 

class EmployeesAttendanceController extends Controller 
{ 
    public function create() 
    { 
     $time = Carbon\Carbon::now(); 
     echo $time; 
    } 

} 

私は細かいconfig/app.phpタイムゾーンの仕事からまっすぐに追加します。たとえば'timezone' => 'UTC'から'timezone' => 'Australia/Sydney'のようになりますが、プロバイダから設定するとタイムゾーンは機能しません。 config/app.phpからタイムゾーンを変更するには

+0

代わりに 'boot()'メソッドを試し、 'date_default_timezone_set()'関数も試してみてください。 – TheFallen

答えて

0

の必要はありませんあなたはこの動的 PHP DateTimeクラスとにsetTimezone機能の助けを借りてを扱うことができます。

$time = new \DateTime(date('Y-m-d H:i'), new \DateTimeZone('UTC')); 
$time->setTimezone(new \DateTimeZone('Australia/Sydney')); 
$time = $time->format('Y-m-d H:i'); 
echo $time; 

: - - :'timezone' => 'UTC'config/app.php内のファイルことを確認して、このような

+0

@Tomあなたはこれを試していますか? –

関連する問題