考慮任何UNIX的時間戳t之前取午夜的時間戳,我想T.給定的時間戳
之前獲取午夜的時間戳的給定時間戳可以是任意整數:現在也,今天(未遠[])或者(不太遠[])。
有那麼一個更清潔的方式(僞):
<?php
$midnight = strtotime("{date('d',$ts)}-{date('m',$ts)}-{date('Y', $ts)} midnight");
?>
感謝。
[*] 1990年的地方和
考慮任何UNIX的時間戳t之前取午夜的時間戳,我想T.給定的時間戳
之前獲取午夜的時間戳的給定時間戳可以是任意整數:現在也,今天(未遠[])或者(不太遠[])。
有那麼一個更清潔的方式(僞):
<?php
$midnight = strtotime("{date('d',$ts)}-{date('m',$ts)}-{date('Y', $ts)} midnight");
?>
感謝。
[*] 1990年的地方和
我會做它作爲
$midnight = strtotime(date('Y-m-d',$ts).' 00:00:00');
...但是這是否是清潔劑/越好有爭議...
的Et瞧」到2020年之間
<?php
$midnight = strtotime(date('d-m-Y',$ts));
echo date('d-m-Y H:i:s',$ts); // output 03-11-2011 12:43:41
echo date('d-m-Y H:i:s',$midnight); // ouput 03-11-2011 00:00:00
?>
因爲一整天是86400秒,你應該可以這樣做:
$midnight = $ts - $ts%86400;
但是,這不會考慮可能已應用於unix時間戳的任何閏秒。
這會比使用strtotime更多的性能,但可能只是如果你要在嚴格的循環中做到這一點很重要。
謝謝。我擔心通過strtotime的路線是唯一的「實用」方法。你的這些是最乾淨的。 – berkes