PHP strtotime 函数 - 依赖系统的时区不安全?
Posted
技术标签:
【中文标题】PHP strtotime 函数 - 依赖系统的时区不安全?【英文标题】:PHP strtotime function - not safe to rely on system's timezone? 【发布时间】:2012-07-12 06:05:37 【问题描述】:我想将日期 - 2012-05-25 转换为 unix 时间戳。当我使用 strtotime() 函数时,它说
php 警告:strtotime():依赖系统的时区设置是不安全的。您需要使用 date.timezone 设置或 date_default_timezone_set() 函数。如果您使用了这些方法中的任何一种,但仍然收到此警告,您很可能拼错了时区标识符。我们在第 323 行的 /var/www/html/__modules/tickets/library/Notification/RD_time.php 中为 'IST/5.0/no DST' 选择了 'Asia/Calcutta'。
请帮帮我。我需要在今晚之前刷新这些报告。
【问题讨论】:
【参考方案1】:您可以在代码开头添加以下内容:
date_default_timezone_set('Africa/Lagos');//or change to whatever timezone you want
如果你想创建一次,你可以把时区放在你的 php.ini 文件中。你可以搜索date.timezone
,你的php.ini文件里应该有这样的块:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Africa/Lagos
一定要重启服务器(service httpd restart
在 linux 上)。
时区列表可以在这里找到http://www.php.net/manual/en/timezones.php。
【讨论】:
【参考方案2】:按照警告中的说明进行操作并使用date_default_timezone_set
例如:
date_default_timezone_set('America/New_York');
【讨论】:
以上是关于PHP strtotime 函数 - 依赖系统的时区不安全?的主要内容,如果未能解决你的问题,请参考以下文章