首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法在php.ini文件中设置date.timezone

无法在php.ini文件中设置date.timezone
EN

Stack Overflow用户
提问于 2013-12-08 17:16:20
回答 8查看 86.6K关注 0票数 22

我使用php5.5,每当我在PHP中使用date函数时都会得到这个错误:

代码语言:javascript
复制
 Warning: phpinfo(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /var/www/info.php on line 1

加载的配置文件如下:

代码语言:javascript
复制
/etc/php5/apache2/php.ini 

因此,我将date.timezone设置更改为:

代码语言:javascript
复制
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Jakarta

; http://php.net/date.default-latitude
;date.default_latitude = 31.7667

; http://php.net/date.default-longitude
;date.default_longitude = 35.2333

; http://php.net/date.sunrise-zenith
;date.sunrise_zenith = 90.583333

; http://php.net/date.sunset-zenith
;date.sunset_zenith = 90.583333

然后我重新启动服务器:

代码语言:javascript
复制
sudo /etc/init.d/apache2 restart

但仍然收到此错误,我尝试检查附加ini文件位置中的.ini文件,但它们都没有覆盖date.timezone设置

我已经检查了php.ini文件权限,但是仍然不能工作,请指导我解决这个问题,谢谢..

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2013-12-23 00:24:33

最终解决了我的问题,这是我加载的配置文件:

代码语言:javascript
复制
/etc/php5/apache2/php.ini 

在这里修改了date.timezone,但它不起作用。

因此,我检查了phpinfo()中的"Scan this dir for additional .ini files“值,它指向:

代码语言:javascript
复制
/etc/php5/apache2/conf.d 

然后,我在该文件夹中的所有文件中搜索date.timezone,但都没有找到。

这是我在phpinfo()中的附加.ini文件解析值:

代码语言:javascript
复制
/etc/php5/apache2/conf.d/05-opcache.ini, /etc/php5/apache2/conf.d/10-pdo.ini, /etc/php5/apache2/conf.d/20-json.ini, /etc/php5/apache2/conf.d/20-mysql.ini, /etc/php5/apache2/conf.d/20-mysqli.ini, /etc/php5/apache2/conf.d/20-pdo_mysql.ini, /etc/php5/apache2/conf.d/20-xdebug.ini, /etc/php5/apache2/conf.d/30-mcrypt.ini 

我修改了/etc/php5/apache2/conf.d/20-xdebug.ini,并附加了以下行:

代码语言:javascript
复制
date.timezone = Asia/Jakarta

很奇怪,但这解决了我的问题!

票数 16
EN

Stack Overflow用户

发布于 2013-12-08 17:17:04

试试这个:

代码语言:javascript
复制
date.timezone = "Asia/Jakarta"

编辑:

让我们找到正确的php.ini。在apache / nginx /您使用的任何web服务器进程中启动此命令(因为它使用的命令行版本可能不同)。

代码语言:javascript
复制
<?php
phpinfo();
?>

输出中的.ini是什么?还是老样子?

Edit2:

在php.ini编辑之后,只需重新启动the服务器(apache或nginx) ...

票数 19
EN

Stack Overflow用户

发布于 2014-02-20 04:00:12

你应该通过locate php.in来结账,如果有其他地方的话。

对我来说。应该有用于命令行界面的CLI:

代码语言:javascript
复制
/etc/php5/cli/php.ini
/etc/php5/fpm/php.ini

更改/etc/php5/cli/php.ini

它现在对我很有效。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20451719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档