0

我的 PHP 时区是“亚洲/德黑兰”,所以我不希望 gmmktime 给我与 mktime 相同的结果。

php信息:

默认时区亚洲/德黑兰

但是,当我输入我的 php 控制台时:

echo date('jS F Y h:i:s A (T)', mktime());

2013 年 9 月 3 日上午11:23 :10 (IRDT)

echo date('jS F Y h:i:s A (T)', gmmktime());

2013 年 9 月 3 日上午11:23 :16 (IRDT)

虽然我预计有 3.5 或 4.5 小时的时差。我在某个地方犯了错误吗?

4

1 回答 1

1

您需要在gmmktime()中提供 Argumente 。你的错误是,先明白mktime() vs gmmktime()。看到这个链接

解决方法很简单,使用gmdate()函数显示使用gmmktime().

<?php
  $inputDate = gmmktime(0,0,0,2,7,2012);
  echo gmdate("M d Y H:i:s O", $inputDate);
  // Feb 07 2012 00:00:00 +0000
?>
于 2013-09-03T07:18:02.840 回答