gpt4 book ai didi

php - 检查时间并获取联合时间

转载 作者:行者123 更新时间:2023-11-29 23:52:48 25 4
gpt4 key购买 nike

我有一个数组。

Array
(
[0] => Array
(
[starttime] => 08:00
[endtime] => 9.30:00
)

[1] => Array
(
[starttime] => 10:00
[endtime] => 11:00
)

[2] => Array
(
[starttime] => 10:00
[endtime] => 12:00
)

)

我想要一些东西,比如在时间之间删除并返回联合时间。
喜欢

Array
(
[0] => Array
(
[starttime] => 08:00
[endtime] => 09:30
)

[2] => Array
(
[starttime] => 10:00
[endtime] => 12:00
)

)

这里 08:00 和 9:30 是单一时段,中间没有其他时段,因为 10:00 - 11:00 比 9:30 更大。
10:00 - 11:00 是在 10:00 - 12:00 之间,因此删除第二个对象只显示第一个和第三个。
只需调用即可获得工会时间。

逻辑我思考了他们并得到了一个逻辑。
首先找到最小的开始时间。然后检查最小开始时间到结束时间之间的任何其他值。

Example

我怎样才能做到这一点。

最佳答案

以下是具体操作方法

    $array = array(
array('starttime' => '08:00' , 'endtime' => '09:30') ,
array('starttime' => '10:00' , 'endtime' => '11:00') ,
array('starttime' => '10:00' , 'endtime' => '12:00') ,
);

$i=0;
foreach($array as $row){
if(isset($array[$i-1])){
$prev = $array[$i];
if($row['starttime'] < $prev['endtime'] || $row['endtime'] > $prev['endtime']){
unset($array[$i]);
}
}
$i++;
}

echo '<pre>';
print_r($array);

您可以粘贴并测试代码 here

输出

    Array
(
[0] => Array
(
[starttime] => 08:00
[endtime] => 09:30
)

[2] => Array
(
[starttime] => 10:00
[endtime] => 12:00
)

)

关于php - 检查时间并获取联合时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25527224/

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