我有一个名为$end_date
的变量,它以诸如1539129600
这样的纪元格式给我日期。这将转换为Wednesday 10 October 2018 00:00:00
。
该变量返回不同的日期,但是时间总是相同的00:00:00
。是否可以使用此变量,将时间设置为23:59:59
,然后将其保存回新的$end_date_time
变量中,该变量包含相同的日期和新的时间23:59:59
,以纪元格式。>
答案 0 :(得分:1)
您可以使用DateTime
类进行此操作,使用setTimestamp
转换时间戳,然后使用setTime
设置一天中的时间,最后使用{{3}获得新的时间戳}:
$end_date = 1539129600;
$end_of_day = new DateTime(null, new DateTimeZone('UTC'));
$end_of_day->setTimestamp($end_date);
echo $end_of_day->format('Y-m-d H:i:s') . "\n";
$end_of_day->setTime(23,59,59);
echo $end_of_day->format('Y-m-d H:i:s') . "\n";
echo (int)$end_of_day->format('U');
输出:
2018-10-10 00:00:00
2018-10-10 23:59:59
1539215999