我正在尝试创建一个下拉选择列表,从用户当前日期开始。我希望它的时间设置为Unix时间戳格式的午夜。
这是我正在做的全部内容:
$today = strtotime('today');
echo $today;
这是我的结果:
1333144800
日期是:根据Epoch Converter是Fri,30 Mar 2012 22:00:00 GMT(有几个小时不正确)。
我正在尝试创建一个下拉选择列表,从用户当前日期开始。我希望它的时间设置为Unix时间戳格式的午夜。
这是我正在做的全部内容:
$today = strtotime('today');
echo $today;
这是我的结果:
1333144800
日期是:根据Epoch Converter是Fri,30 Mar 2012 22:00:00 GMT(有几个小时不正确)。
如果你希望strtotime() 返回相对于 UTC 的时间戳(例如,如果你的系统设置为相对于UTC/GMT偏移2小时的时区,则返回00:00:00 UTC 而不是 00:00:00 UTC+2),则需要指定:
$today = strtotime('today UTC');
GMT (+0) 时间
echo $today = strtotime('today GMT');
echo "<br>" . $today = date("d-m-Y H:i:s", $today);
我们希望您的服务器以GMT时间运行 - 这是最好的(以后更容易操作时间显示)。如果不是,您必须调整php.ini并设置"date.timezone = GMT"。
完成上述步骤后,你将会看到我的代码输出为00:00。
接下来,您需要在脚本中开发一个函数(例如DisplayDate()),以便正确显示网站日期,如果:
DisplayDate() 函数还应包括对夏令时更改的支持(0或+1小时/夏季和冬季时间)。
strtotime( $time )
该函数旨在返回 Unix 时间戳,即从1970年1月1日以来的秒数。 http://www.php.net/manual/zh/function.strtotime.php
为了避免这种情况,可以使用类似以下代码:
$today = date("d/m/Y H:i:s", strtotime('today'));
echo $today;
$today_midnight = strtotime('today UTC 00:00');
您应该检查您的php.ini文件中的时区配置。在我的情况下(我住在萨尔瓦多),我必须像这样更改它:
date.timezone = America/El_Salvador