gpt4 book ai didi

php - 与PHP中的日期数组相比,如何获得最接近的日期

转载 作者:IT王子 更新时间:2023-10-29 00:17:13 26 4
gpt4 key购买 nike

This post几乎为我回答了这个问题,但我有一个特定的需要,但没有找到我在那里寻找的东西。这完全超出了我的经验;我无法完全理解它,所以我真正需要的只是指向正确方向的一点。

假设我有一个数组如下:

array(5) { 
[0]=> "2013-02-18 05:14:54"
[1]=> "2013-02-12 01:44:03"
[2]=> "2013-02-05 16:25:07"
[3]=> "2013-01-29 02:00:15"
[4]=> "2013-01-27 18:33:45"
}

我想有一种方法来提供日期(例如“2013-02-04 14:11:16”),并有一个函数确定数组中与此最接近的匹配项(这将是“2013-02-05 16:25:07"在这种情况下)。

如果有任何提示,我将不胜感激。谢谢! :)

最佳答案

我可能没有最好的命名约定,但这里是。

我计算日期数组和给定日期之间的间隔。然后我进行排序,以找到“最小”差异。

$dates = array
(
'0'=> "2013-02-18 05:14:54",
'1'=> "2013-02-12 01:44:03",
'2'=> "2013-02-05 16:25:07",
'3'=> "2013-01-29 02:00:15",
'4'=> "2013-01-27 18:33:45"
);


function find_closest($array, $date)
{
//$count = 0;
foreach($array as $day)
{
//$interval[$count] = abs(strtotime($date) - strtotime($day));
$interval[] = abs(strtotime($date) - strtotime($day));
//$count++;
}

asort($interval);
$closest = key($interval);

echo $array[$closest];
}

find_closest($dates, "2013-02-18 05:14:55");

关于php - 与PHP中的日期数组相比,如何获得最接近的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15016725/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com