我想创建一个可以找到最接近时间的函数,基于一个秒的字符串。
系统将收到相当于该时间秒的int数。 PHP必须找到最接近的(过去的)日期。
示例:
//supose that an anterior script created it at "14-08-25 10:32:30"
//and now it's "14-08-25 10:33:12"
$seconds = 30; // the variable passed from an anterior script
$time_received= date('Y-m-d H:i:s'); // this is the time that I'll receive this
//so, from these 2 variables above, i must find "14-08-25 10:32:30"
任何人都知道如何做到这一点?
我有这些变量: 现在的时间,即" 14-08-25 10:33:12" 和$ seconds变量。
有了这两个,我想得到" 14-08-25 10:32:30"
答案 0 :(得分:0)
我并不完全清楚你想要完成什么,但我正在使用strtotime()
进行猜测:
<?php
$seconds = 30;
$time = strtotime("-" . $seconds . " seconds");
echo date( "Y-m-d H:i:s", $time );
?>
答案 1 :(得分:0)
实测值。 我正在使用这个脚本:
$seconds = 30;
$new_date = new DateTime(date()); //the only two variables that i have
if($new_date->format('s')<$seconds){
$new_date->setTime($new_date->format('H'),$new_date->format('i')-1,$seconds);
$old_date = $new_date->format('Y/m/d H:i:s');
}else{
$new_date->setTime($new_date->format('H'),$new_date->format('i'),$seconds);
$old_date = $new_date->format('Y/m/d H:i:s');
}