PHP 设置时区

Sob*_*dar 4 php timezone timestamp-with-timezone

我有以下代码:

$date = new DateTime(date("Y-m-d H:i:s"), new DateTimeZone('Asia/Karachi'));  
echo $date->format('Y-m-d H:i:s');
Run Code Online (Sandbox Code Playgroud)

输出:2015-08-26 17:46:05
实际结果应该是:2015-08-26 13:46:05

如何设置时区,以便实际输出?

Sla*_*lay 5

方法一(编辑Php.ini)

1) 打开你的 php.ini 文件

2) 将以下代码行添加到 php.ini 文件的顶部

date.timezone = "Asia/Karachi"
Run Code Online (Sandbox Code Playgroud)

3)重启php。

注意:您可以在此处找到时区列表:http : //php.net/manual/en/timezones.asia.php

方法 2(使用 date_default_timezone_set)

如果您无权访问该php.ini文件,则可以使用date_default_timezone_set("Asia/Karachi"). 只需将其放在应用程序的入口点即可。

http://php.net/manual/en/function.date-default-timezone-set.php