Tijdzone wijzigen in Lumen of Laravel 5

Ik gebruik het Lumen-framework. Hoe kan ik de tijdzone wijzigen in Europa/Parijs CEST?

Ik heb een variabele toegevoegd aan mijn .env-bestand:

APP_TIMEZONE=Europe/Paris

Maar dit werkt niet. Wat is de juiste manier om de tijdzone bij te werken?


Antwoord 1, autoriteit 100%

U kunt uw app-tijdzoneinstellen door het bestand app.phpte configureren in configmap .

Als u de tijdzone wilt wijzigen, wijzigt u de waarde van timezonein het app.php-bestand.

Dit staat in deze sectie

|--------------------------------------------------------------------------
| 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.
|

Voor mij gebruik ik Azië/Dhakaals tijdzone voor mijn aanvraag.

Hier is de juiste syntaxis:

'timezone' => 'Asia/Dhaka'

De lijst met tijdzonesvoor PHP.


Antwoord 2, autoriteit 26%

Er zijn twee manieren om uw code bij te werken.
1. Open het bestand app.phpdat aanwezig is in de map configin de ool van uw project.
Ga naar beneden op de pagina en controleer Tijdzone van toepassing
waar vind je

'timezone' => 'UTC',

Hier kunt u uw tijdzone toevoegen zoals

'timezone' => 'Europe/Paris',

Als je je tijdzone wilt beheren vanuit het .env-bestand, dan kun je onderstaande code toevoegen aan je config.php-bestand.

'timezone' => env('APP_TIMEZONE', 'UTC'),

en voeg de onderstaande regel toe aan uw .env-bestand.

APP_TIMEZONE='Europe/Paris'

Bekijk de onderstaande link voor meer informatie:
https://laravel.com/docs/5.6/configuration#accessing-configuration-values


Antwoord 3, autoriteit 11%

Na het wijzigen van app.php, zorg ervoor dat u het volgende uitvoert:

php artisan config:clear

Dit is nodig om de cache van configuratie-instellingen te wissen. Als je merkt dat je tijdstempels nog steeds verkeerd zijn nadat je de tijdzone in je app.php-bestand hebt gewijzigd, zou het uitvoeren van de bovenstaande opdracht alles moeten vernieuwen en zou je nieuwe tijdzone effectief moeten zijn.


Antwoord 4, autoriteit 5%

Probeer dit a.u.b. –
Maak een map ‘config’ in uw lumen-setup en maak vervolgens het app.php-bestand in deze ‘config’-map. het ziet er zo uit –

<?php return ['app.timezone' => 'America/Los_Angeles'];

Dan heb je overal toegang tot de waarde op deze manier –

$value = config('app.timezone');

Als het niet werkt, kun je deze regels toevoegen in routes.php

date_default_timezone_set('America/Los_Angeles');

Dit werkte voor mij!


Antwoord 5, autoriteit 5%

Ga naar config -> app.php en verander ‘timezone’ => ‘Azië/Jakarta’,

(dit is mijn tijdzone)


Antwoord 6, autoriteit 3%

Geef in het .env-bestand van Lumen de tijdzones op. Voor India zou het zijn als:

APP_TIMEZONE = 'Asia/Calcutta'
DB_TIMEZONE = '+05:30'

Antwoord 7, autoriteit 3%

Er is een eenvoudige manier om de standaardtijdzone in laravel of lumen in te stellen.

Dit is handig als u in meerdere omgevingen werkt waar u verschillende tijdzones kunt gebruiken op basis van elke omgeving.

  1. Open .envbestand aanwezig in uw projectdirectory
  2. Voeg APP_TIMEZONE=Asia/Kolkatatoe in .env(U kunt elke tijdzone kiezen uit de ondersteunde tijdzones)
  3. Open app.phpaanwezig in de map bootstrapvan uw projectdirectory
  4. Voeg date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));toe aan app.php.

Met deze wijziging neemt uw project uw .envingestelde tijdzone en als er niets is ingesteld, neemt u standaard UTCin.

Na het wijzigen van de tijdzone-instelling voert u het commando php artisan config:clearuit, zodat uw wijzigingen in uw toepassing worden weergegeven


Antwoord 8, autoriteit 2%

In mijn geval (een datum lezend van een MySQL db in een Lumen 5.1-project) is de enige oplossing die werkte het gebruik van Carbon om de tijdzone van variabelen in te stellen:

   $carbonDate = new Carbon($dateFromDBInUTC);
    $carbonDate->timezone = 'America/New_York';
    return $carbonDate->toDayDateTimeString(); // or $carbonDate->toDateTimeString() for ISO format

Het gebruik van DB_TIMEZONE=-05:00in het bestand .envwerkte bijna, maar verwerkt geen zomertijdwijzigingen.

Het gebruik van de APP_TIMEZONE=America/New_Yorkin het .env-bestand had geen effect op een tijdzonewaarde die werd opgehaald in een Lumen 5.1-webapp uit een MySQL-database, maar het werkt in Lavarel 5.1.

Ook Lumen heeft het bestand [lumen_project]/config/app.phpdat ik heb gemaakt helemaal niet gelezen (het klaagde niet toen ik daar een syntaxisfout plaatste).

Het gebruik van date_default_timezone_setwerkte ook niet.


Antwoord 9, autoriteit 2%

Gebruik php-tijdzones uit de php-handleiding
Php-tijdzones

Bijvoorbeeld de mijne heb ik gewijzigd van de UTC-waarde in config/app.php met

'timezone' => 'Africa/Nairobi',

Antwoord 10, autoriteit 2%

Standaard is de tijdzone van het laravel-project **UTC*

  • je kunt de tijdzone-instelling vinden in App.phpvan de config-map

‘tijdzone’ => ‘UTC’,

wijzig nu volgens uw tijdzone voor mij is het Azië/Calcutta

dus voor mij is de instelling ‘timezone’ => ‘Azië/Calcutta’,

  • Nadat je je tijdzone-instelling hebt gewijzigd, voer je het commando php artisan config:cache
  • uit

*voor tijdzonelijst bezoek deze url https://www.w3schools.com/php /php_ref_timezones.asp


Antwoord 11, autoriteit 2%

Je hoeft alleen het app.php-bestand in de configuratiemap te bewerken
Zoek gewoon de volgende regels

/*
|--------------------------------------------------------------------------
| 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',

En… verander het voor:

'timezone' => 'Europe/Paris',

Antwoord 12

Voor mij was de app.php hier /vendor/laravel/lumen-framework/config/app.phpmaar ik kon het ook veranderen vanuit het bestand .envwaar het kan worden ingesteld op een van de waarden die hierworden vermeld (originele PHP-documentatie hier).


Antwoord 13

Gewoon APP_TIMEZONE=Azië/Colombowijzigen in .env en uitvoeren
php artisan lumen-config:cache
werkte voor mij in lumen 5.7


Antwoord 14

Ik pas het aan in de .env APP_TIMEZONE.

Voor Colombia: APP_TIMEZONE = Amerika / Bogota
ook voor parijs als volgt: APP_TIMEZONE = Europa / Parijs

Bron: https://www.php.net/manual/es /timezones.europe.php

Other episodes