Ich benutze das Lumen-Framework. Wie kann ich die Zeitzone auf Europa / Paris MESZ ändern?
Ich habe meiner .env
Datei eine Variable hinzugefügt :
APP_TIMEZONE=Europe/Paris
Aber das funktioniert nicht. Was ist der richtige Weg, um die Zeitzone zu aktualisieren?
Antworten:
Sie können Ihre App-Zeitzone festlegen , indem Sie die
app.php
Datei imconfig
Ordner konfigurieren .Um die Zeitzone zu ändern, ändern Sie den Wert der Zeitzone in der Datei app.php.
Dies wird in diesem Abschnitt geschrieben
|-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default timezone for your application, which | will be used by the PHP date and date-time functions. We have gone | ahead and set this to a sensible default for you out of the box. |
Für mich benutze ich Asia / Dhaka als meine Bewerbungszeitzone.
Hier ist die entsprechende Syntax:
'timezone' => 'Asia/Dhaka'
Liste der Zeitzonen für PHP 5
quelle
php artisan config:cache
nachdem Sie Ihre app.php-Datei geändert haben. Sie müssen die Konfiguration unter der neuen Einstellung neu laden.,
am Ende der Zeile hinzuzufügen . ;). Ich meine'timezone' => 'Asia/Dhaka',
Es gibt zwei Möglichkeiten, Ihren Code zu aktualisieren. 1. Öffnen Sie die Datei app.php im Konfigurationsverzeichnis unter lool Ihres Projekts. Gehen Sie die Seite entlang und überprüfen Sie die Anwendungszeitzone, in der Sie sie finden
'timezone' => 'UTC',
Hier können Sie Ihre Zeitzone wie hinzufügen
'timezone' => 'Europe/Paris',
Wenn Sie Ihre Zeitzone aus einer
.env
Datei verwalten möchten, können Sie den folgenden Code in Ihreconfig.php
Datei einfügen .'timezone' => env('APP_TIMEZONE', 'UTC'),
und fügen Sie die folgende Zeile in Ihre
.env
Datei ein.APP_TIMEZONE='Europe/Paris'
Weitere Informationen finden Sie unter dem folgenden Link: https://laravel.com/docs/5.6/configuration#accessing-configuration-values
quelle
Stellen Sie nach dem Ändern von app.php sicher, dass Sie Folgendes ausführen:
Dies ist erforderlich, um den Cache der Konfigurationseinstellungen zu leeren. Wenn Sie feststellen, dass Ihre Zeitstempel nach dem Ändern der Zeitzone in Ihrer app.php-Datei immer noch falsch sind, sollte das Ausführen des obigen Befehls alles aktualisieren und Ihre neue Zeitzone sollte wirksam sein.
quelle
Bitte versuchen Sie dies - Erstellen Sie ein Verzeichnis 'config' in Ihrem Lumen-Setup und erstellen Sie dann die Datei app.php in diesem 'config'-Verzeichnis. es wird so aussehen -
<?php return ['app.timezone' => 'America/Los_Angeles'];
Dann können Sie überall auf diesen Wert zugreifen -
$value = config('app.timezone');
Wenn es nicht funktioniert, können Sie diese Zeilen in route.php hinzufügen
date_default_timezone_set('America/Los_Angeles');
Das hat bei mir funktioniert!
quelle
app.timezone
dasapp.php
Einfügen der Konfigurationsdatei ist redundant, da derapp
Teil vonconfig('app.timezone')
auf den Dateinamen imconfig/
Verzeichnis verweist .(Dies ist meine Zeitzone)
quelle
In meinem Fall (Lesen eines Datums aus einer MySQL-Datenbank in einem Lumen 5.1-Projekt) hat die einzige Lösung darin bestanden, Carbon zum Festlegen der Zeitzone von Variablen zu verwenden:
$carbonDate = new Carbon($dateFromDBInUTC); $carbonDate->timezone = 'America/New_York'; return $carbonDate->toDayDateTimeString(); // or $carbonDate->toDateTimeString() for ISO format
Die Verwendung
DB_TIMEZONE=-05:00
in der.env
Datei hat fast funktioniert, verarbeitet jedoch keine Sommerzeitänderungen.Die Verwendung von
APP_TIMEZONE=America/New_York
in der.env
Datei hatte keine Auswirkung auf einen Zeitzonenwert, der in einer Lumen 5.1-Webanwendung aus einer MySQL-Datenbank abgerufen wurde, funktioniert jedoch in Lavarel 5.1.Außerdem hat Lumen
[lumen_project]/config/app.php
die von mir erstellte Datei überhaupt nicht gelesen (es hat sich nicht beschwert, als ich dort einen Syntaxfehler eingefügt habe).Die Verwendung
date_default_timezone_set
hat auch nicht funktioniert.quelle
Geben Sie in Lumens .env-Datei die Zeitzonen an. Für Indien wäre es wie:
APP_TIMEZONE = 'Asia/Calcutta' DB_TIMEZONE = '+05:30'
quelle
Sie müssen nur die Datei de app.php im Konfigurationsverzeichnis bearbeiten. Suchen Sie einfach die nächsten Zeilen
/* |-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default timezone for your application, which | will be used by the PHP date and date-time functions. We have gone | ahead and set this to a sensible default for you out of the box. | */ 'timezone' => 'UTC',
Und ... chage es für:
'timezone' => 'Europe/Paris',
quelle
Standardmäßig ist die Zeitzone des Laravel-Projekts ** UTC *
'Zeitzone' => 'UTC',
Ändern Sie jetzt entsprechend Ihrer Zeitzone für mich Asien / Kalkutta
Für mich ist die Einstellung also 'Zeitzone' => 'Asien / Kalkutta',
* Eine Liste der Zeitzonen finden Sie unter dieser URL unter https://www.w3schools.com/php/php_ref_timezones.asp
quelle
Verwenden Sie PHP-Zeitzonen aus PHP-Handbuch PHP-Zeitzonen
Zum Beispiel habe ich den UTC-Wert in config / app.php mit geändert
'timezone' => 'Africa/Nairobi',
quelle
Es gibt eine einfache Möglichkeit, die Standardzeitzone in Laravel oder Lumen festzulegen.
Dies ist hilfreich, wenn Sie in mehreren Umgebungen arbeiten, in denen Sie je nach Umgebung unterschiedliche Zeitzonen verwenden können.
APP_TIMEZONE=Asia/Kolkata
in.env
(Sie können wählen Sie eine beliebige Zeitzone aus den unterstützten Zeitzonen )date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));
inapp.php
.Mit dieser Änderung nimmt Ihr Projekt Ihre .env- Zeitzone und wenn nichts eingestellt ist, nehmen Sie standardmäßig UTC .
quelle
Für mich war die app.php hier,
/vendor/laravel/lumen-framework/config/app.php
aber ich konnte sie auch von der.env
Datei aus ändern, in der sie auf einen der hier aufgeführten Werte gesetzt werden kann (PHP-Originaldokumentation hier ).quelle
Bitte gehen Sie zur .env-Datei und ändern Sie den Wert von AWS_DEFAULT_REGION in einen speziellen Bereich, den Sie ...
quelle
Ändern Sie einfach APP_TIMEZONE = Asia / Colombo in .env und führen Sie php artisan lumen-config: cache aus, das in Lumen 5.7 für mich funktioniert hat
quelle
Ich ändere es in der .env APP_TIMEZONE.
Für Kolumbien: APP_TIMEZONE = Amerika / Bogota auch für Paris wie dieses: APP_TIMEZONE = Europa / Paris
Quelle: https://www.php.net/manual/es/timezones.europe.php
quelle