2017-07-05 19 views
0

私のアプリでダイナミックタイムゾーンを設定しましたが、間違った結果が表示されています。ここに私のコードは私の出力ダイナミックタイムゾーンがlaravelで機能していません

Asia/Calcutta 
Seted time zone => Asia/Calcutta 
DateTime Object ([date] => 2017-07-05 14:51:41.000000 [timezone_type] => 3 [timezone] => Asia/Calcutta) 
Europe/Madrid 
Seted time zone => Europe/Madrid 
DateTime Object ([date] => 2017-07-05 14:51:41.000000 [timezone_type] => 3 [timezone] => Asia/Calcutta) 
US/Eastern 
Seted time zone => US/Eastern 
DateTime Object ([date] => 2017-07-05 14:51:41.000000 [timezone_type] => 3 [timezone] => Asia/Calcutta) 

は、ここで私は\Config::set('app.timezone', $timeValue);を使用してタイムゾーンを設定していると私は\Config::get('app.timezone');を使用してタイムゾーンを得るとき、それは完璧に示すが、私はdatetimeオブジェクトを印刷するとき、それは別のタイムゾーンを示しています後

$timezone = [ 
     'asia_calcutta_time' => 'Asia/Calcutta', 
     'europe_madrid_time' => 'Europe/Madrid', 
     'us_eastern_time' => 'US/Eastern' 
    ]; 
    foreach ($timezone as $timeKey => $timeValue) { 
     \Config::set('app.timezone', $timeValue); 
     echo $timeValue . "<br>Seted time zone => "; 
     echo \Config::get('app.timezone') . "<br>"; 

     print_r(new \DateTime('now')); 
     print_r("<br>"); 
    } 

ですどうすればこの問題を解決できますか?私はまた、キャッシュのクリア、クリアなコンパイル、明確な設定、明確なルート、クリアな視界の後にしようとしているが、それはコンフィグを使用して、適切な結果に

+0

私は、私が個人的に 'コンフィグを使用して問題が発生したと思う::セット() '時々前に。最初に関数が呼び出されたのは、最後に機能したときです。あなたはハックを試したことがありますか?また、あなたと少しテストを実行したいことがあります。 'date_default_timezone_set(「ヨーロッパ/マドリッド」);' –

+0

おかげで、私はすでに 'date_default_timezone_set(「ヨーロッパ/マドリッド」)で試してみる;'、それが働いていますが、私はタイムゾーンを変更したいです設定変数の変更による '関数;ないコアPHPの道あなたの答えのための – Tester

答えて

0

私が個人的に遭遇した問題を示していない::設定()時に前。最初に関数が呼び出されたのは、最後に機能したときです。あなたが代わりにConfig::set()を使用しての日時にDateTimeZoneのこの使用して、新しいインスタンスとしてそれを持つことができWay to use Config::set() twice in a function

:あなたはここに参照を見ることができます

foreach ($timezone as $timeKey => $timeValue) { 
    echo $timeValue . "<br>Seted time zone => ".$timeValue; 
    print_r(new \DateTime('now', new \DateTimeZone($timeValue))); 
    print_r("<br>"); 
} 
+0

感謝をlaravelの方法を通じてしかし、私は、' date_default_timezone_set(「ヨーロッパ/マドリッド」)のような作業と同じ、特定の日付ではない環境全体に対してタイムゾーンを変更したいです。また、私の質問の1つは設定されたタイムゾーンが変更されたのですが、タイムゾーンオブジェクトでタイムゾーンが変更されないのはなぜですか? – Tester

+0

ああ、私はあなたが今理解しているのを見る... –

関連する問題