21,886
社区成员
发帖
与我相关
我的任务
分享
<?php
/**
取某一段时间(存在断点,非连续时间)内跟指定的时间最接近的时间;
**/
$date_start = '2005-02-27';//设置日期起始时间
$date_end = '2005-04-09'; //设置日期结束时间
$date_compare = strtotime('2005-01-08');//指定时间
$arx = range(strtotime($date_start), strtotime($date_end), 24*60*60);
$ar = array_map(create_function('$v', 'return date("Y-m-d", $v);'), $arx);
function cmp($b){
global $date_compare;
return abs($b-$date_compare);
}
$ary = (array_map("cmp",$arx));
$key_min =(end(array_keys($ary,min($ary),true)));
echo($ar[$key_min]);
?>