我在本地和临时服务器上使用strtotime
函数,2014年10月28日的日期如echo strtotime('2014-10-28')
。PHP strtotime函数在同一日期在不同的服务器上给出不同的结果
本地服务器的结果:1414468800
临时服务器的结果:1414425600
为什么会出现在不同的服务器和结果之间的差异如何解决这个问题?
我在本地和临时服务器上使用strtotime
函数,2014年10月28日的日期如echo strtotime('2014-10-28')
。PHP strtotime函数在同一日期在不同的服务器上给出不同的结果
本地服务器的结果:1414468800
临时服务器的结果:1414425600
为什么会出现在不同的服务器和结果之间的差异如何解决这个问题?
我认为这是因为两个服务器有差异时区..
可以ATLEAST做到这一点:
$date = '2014-10-28'; // date
$timezone = 'America/Virgin'; // timezone you prefer
$date = new DateTime($date , new DateTimeZone($timezone));
echo $date->getTimestamp();
您可以在php.ini
文件中设置的时区。该值是
date.timezone = "Americas/New_York"
我觉得这个值是系统上的不同。
否则,您必须将其设置在您的脚本中,但我认为最好将其设置在您的配置中。
是的,我认为是。如果您没有访问服务器配置,则只能通过脚本执行此操作。 – 2014-10-27 11:16:56
我觉得它因为不同的时区 – 2014-10-27 11:00:29
你可能会尝试使用[time()](http://php.net/manual/en/function.time.php)函数。 – turtle 2014-10-27 11:02:18