取某一段时间(存在断点,非连续时间)内跟指定的时间最接近的时间

conqweal 2009-03-23 01:41:22
<?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]);
?>

以上自己写的代码,嫌太麻烦了,求高手...
...全文
55 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
conqweal 2009-04-16
  • 打赏
  • 举报
回复
愿闻详解.
phpboy 2009-03-29
  • 打赏
  • 举报
回复
up
学习一样,楼主可以从实现的方法上再考虑一下

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧