我使用的是Lumen框架。如何将时区更改为欧洲/巴黎CEST?
我在.env
文件中添加了一个变量:
APP_TIMEZONE=Europe/Paris
但这行不通。更新时区的正确方法是什么?
您可以通过在config
文件夹中配置app.php
文件来设置应用程序时区。
要更改时区,请修改app.php文件中时区的值。
这写在本节中
|--------------------------------------------------------------------------
| 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' => 'Asia/Dhaka'
PHP的时区列表。
有两种方法可以更新代码。1.请打开项目所在位置的config目录中的文件app.php。向下翻页并检查应用程序时区在哪里可以找到
'timezone' => 'UTC',
在这里你可以像一样添加你的时区
'timezone' => 'Europe/Paris',
如果您想从.env
文件管理您的时区,那么您可以在config.php
文件中添加以下代码。
'timezone' => env('APP_TIMEZONE', 'UTC'),
并在.env
文件中添加以下行。
APP_TIMEZONE='Europe/Paris'
有关详细信息,请查看下面的链接:https://laravel.com/docs/5.6/configuration#accessing-配置值
更改app.php后,请确保运行:
php artisan config:clear
这是清除配置设置缓存所必需的。如果您在更改app.php文件中的时区后发现时间戳仍然错误,那么运行上面的命令应该会刷新所有内容,并且您的新时区应该是有效的。
请尝试-在你的流明设置中创建一个目录"config",然后在这个"config"目录中创建app.php文件
<?php return ['app.timezone' => 'America/Los_Angeles'];
然后你可以在任何地方访问它的价值,比如
$value = config('app.timezone');
如果不起作用,可以在routes.php 中添加此行
date_default_timezone_set('America/Los_Angeles');
这对我有用!
转到config->app.php并更改"时区"=>"亚洲/雅加达",
(这是我的时区(
在Lumen的.env文件中,指定时区。对于印度来说,这就像:
APP_TIMEZONE = 'Asia/Calcutta'
DB_TIMEZONE = '+05:30'
有一种简单的方法可以设置laravel或lumen中的默认时区。
在多个环境中工作时,这很有帮助,因为您可以根据每个环境使用不同的时区。
- 打开项目目录中的.env文件
- 在
.env
中添加APP_TIMEZONE=Asia/Kolkata
(您可以从支持的时区中选择任何时区( - 打开项目目录的bootstrap文件夹中的app.php
- 在
app.php
中添加date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));
通过此更改,您的项目将采用.env设置的时区,如果没有设置任何时区,则默认采用UTC
修改时区设置后,运行命令
php artisan config:clear
,以便您的更改反映在应用程序中
使用php手册中的php时区Php时区
例如,我用将config/app.php中的UTC值更改为
'timezone' => 'Africa/Nairobi',
在我的情况下(从Lumen 5.1项目中的MySQL数据库中读取日期(,唯一有效的解决方案是使用Carbon设置变量的时区:
$carbonDate = new Carbon($dateFromDBInUTC);
$carbonDate->timezone = 'America/New_York';
return $carbonDate->toDayDateTimeString(); // or $carbonDate->toDateTimeString() for ISO format
在.env
文件中使用DB_TIMEZONE=-05:00
几乎有效,但不处理DST更改。
在.env
文件中使用APP_TIMEZONE=America/New_York
对从MySQL数据库在Lumen 5.1网络应用程序中检索的时区值没有影响,但它在Lavarel 5.1中有效。
此外,Lumen根本没有阅读我创建的[lumen_project]/config/app.php
文件(当我在那里放了一个语法错误时,它没有抱怨(。
使用date_default_timezone_set
也不起作用。
您只需要在config目录中编辑de app.php文件只需查找下一行
/*
|--------------------------------------------------------------------------
| 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',
而且。。将其更改为:
'timezone' => 'Europe/Paris',
默认情况下,laravel项目的时区为**UTC*
- 您可以在config文件夹的App.php中找到时区设置
"时区"=>"UTC",
现在根据您的时区更改,对我来说是亚洲/加尔各答
所以对我来说,设置将是"时区"=>"亚洲/加尔各答",
- 更改时区设置后,运行命令php artisan config:cache
*有关时区列表,请访问此urlhttps://www.w3schools.com/php/php_ref_timezones.asp
您可以在config/App.php中找到时区设置放这样的东西:
'timezone' => 'Africa/Bujumbura',
对我来说,app.php在这里是/vendor/laravel/lumen-framework/config/app.php
,但我也可以将其从.env
文件更改为这里列出的任何值(这里是php原始文档(。
打开config/App.php文件并使用"欧洲/巴黎"更新时区值
/*
|--------------------------------------------------------------------------
| 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' => 'Europe/Paris',
然后通过运行以下artisan命令清除配置缓存
php artisan config:clear
Laravel 9更改时区更改/设置
Go,config''app.php——您的laravel目录中的文件
您将在哪里获得选项--"时区"=>'UTC'
用你的一个相关参数更改这个参数,例如:"时区"=>'亚洲/加尔各答,
只需在.env中更改APP_TIMEZONE=亚洲/科伦坡并运行php artisan流明配置:缓存在管腔5.7 中为我工作
我在.env APP_TIMEZONE中修改它。
哥伦比亚:APP_TIMEZONE=美国/波哥大同样适用于巴黎:APP_TIMEZONE=欧洲/巴黎
来源:https://www.php.net/manual/es/timezones.europe.php