2013-07-30 9 views
12

Ich möchte die Standardzeitzone in meinem YII-Projekt festlegen.Wie stelle ich die Standardzeitzone in yii ein?

date_default_timezone_set('Asia/Calcutta'); 

so, was die beste Lage sein, für it.where sollte ich diese setzen, um es als Standard festzulegen.

+3

Die Anwendung selbst hat eine Eigenschaft namens ['timeZone'] (http://www.yiiframework.com/doc/api/1.1/CApplication#timeZone-detail). Setzen Sie es wie jede andere Anwendungseigenschaft in der Anwendungskonfigurationsdatei und Yii ruft 'date_default_timezone_set' für Sie auf. – DCoder

+0

Können Sie bitte näher ausführen? – unknownbits

Antwort

32

Wenn jemand auf Anwendungseigenschaft oder Anwendungskonfiguration verweist, bedeutet dies "root" Konfigurationsvariable, in diesem Fall timeZone.

Teil Config:

<?php 
// in protected/config/main.php 
return array(
    'timeZone' => 'Asia/Calcutta' 
    // Other configuration.... 
); 
-1

es in Config-Put/main.php Dies ist die Datei, die zuerst gelesen wird. Setzen Sie es direkt vor dem Rückgabe-Array().

3

Achten Sie darauf: ist nicht Yii oder PHP-Zeug. Sie müssen date.timezone in Ihrer php.ini Datei definieren. Jetzt gebe ich Ihnen einige Schritte, um dieses Problem zu beheben.

  • allererst Ihre eigene phpinfo.php-Datei erstellen und setzen Insite der PHP-Code

    phpinfo();

  • Führen Sie dieses Skript aus, und suchen Sie nach dem Pfad Ihrer php.ini-Datei.

  • offen php.ini, suchen Sie nach date.timezone String und setzen Sie den Wert auf (zum Beispiel)

    date.timezone = 'Europe/Rome'

Jetzt pflegen Sie nie bekommen wieder dieser Fehler. Warum reparieren diese Sachen in php.ini und nicht in PHP-Code? Ganz einfach: Wenn Sie php.ini-Dateien reparieren, tun Sie dies einmal für alle Ihre Websites. Wenn Sie diese Dinge im PHP-Code beheben, müssen Sie jedes Mal, wenn Sie ein neues Projekt starten, immer wieder nachbessern.

+1

Ich denke, besser in PHP-Code zu beheben. Wenn Sie in einem Team arbeiten, sollte jedes Mitglied seine php.ini ändern. Sie müssen also alle informieren. Wenn Sie es in PHP reparieren, müssen Sie niemanden informieren. Wenn Sie die Webanwendung im Shared Hosting hosten, sind Sie möglicherweise nicht berechtigt, die Zeitzoneneinstellungen zu ändern. –

+0

Wir sind im Jahr 2015. Heute gibt es Teams, die in einer einzigen vagabundierenden Maschine arbeiten. Alle Mitglieder des Teams arbeiten in derselben Maschine. – sensorario

+0

Ich meine, dass Konfiguration für alle einmal vorgenommen werden kann. Und jeder Entwickler kann die Landstreichermaschine aufwerten. Wenn Sie PHP-Code reparieren, müssen Sie alle PHP-Code beheben. – sensorario

Verwandte Themen