将 php 中的时间设置为 00:00:00

2022-08-30 18:58:04

我需要显示时间,但它必须从 00:00:00 开始?我有以下内容,但它使用当前时间。

print(date("H:i:s"));

答案 1

作为 的替代方法,请尝试较新的类,例如mktime()DateTime

$dt = new DateTime;
$dt->setTime(0, 0);
echo $dt->format('H:i:s');

// Add one hour
$dt->add(new DateInterval('PT1H'));
echo $dt->format('H:i:s');

更新

灵活性使其成为计时器的一个非常好的候选者,例如DateInterval

// add 2 years, 1 day and 9 seconds
$dt->add(new DateInterval('P2Y1DT9S'));

答案 2

如果要从午夜开始作为当前日期,请使用:mktime()

<?php

echo date('l jS \of F Y h:i:s A',mktime(0,0,0));

?>

输出

Friday 14th of October 2011 12:00:00 AM

http://codepad.org/s2NrVfRq

mktime() 中,您传递 的参数,因此设置为 get 。(请注意,正如 Phil 所指出的,的参数是可选的,您可以省略,它将默认为当前日期)。hours, minutes, seconds, month, day, yearhours, minutes, seconds0today at midnightmktime()month, day, year

该函数返回一个 unix 时间戳,表示自 unix 时代(1970 年 1 月 1 日)以来的秒数。您可以在几秒钟或几秒钟内从中计数。mktime()

<?php

// $midnight = mktime(0,0,0,date('m'),date('d'),date('Y'));
// The above is equivalent to below
$midnight = mktime(0,0,0);

echo date('l jS \of F Y h:i:s A',$midnight)."\n";
echo date('l jS \of F Y h:i:s A',$midnight+60)."\n"; // One minute
echo date('l jS \of F Y h:i:s A',$midnight+(60*60))."\n"; // One hour

?>

输出

Friday 14th of October 2011 12:00:00 AM
Friday 14th of October 2011 12:01:00 AM
Friday 14th of October 2011 01:00:00 AM

http://codepad.org/FTr98z1n


推荐