Php 在时间和获取联合时间之间进行检查

Php 在时间和获取联合时间之间进行检查,php,mysql,sql,arrays,Php,Mysql,Sql,Arrays,我有一个数组。 Array ( [0] => Array ( [starttime] => 08:00 [endtime] => 9.30:00 ) [1] => Array ( [starttime] => 10:00 [endtime] => 11:00 ) [2] =&

我有一个数组。

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是单身,没有其他人在他们之间,bcz 10:00-11:00比9:30大
10:00-11:00介于10:00-12:00之间,因此移除第二个对象仅显示第一个和第三个对象。
只要打个电话就可以了。

逻辑 我正在思考这些问题,并得出了一个逻辑。
首先找到最小的星时。然后检查任何其他值是否介于最小的开始时间和结束时间之间。




我怎样才能做到这一点。

以下是您可以做到的方法

    $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);

让我们看看你到目前为止都做了些什么。是的,让我们看看,让我们看看,让我们看看@TimesPlinder我只是想了一些逻辑,找到了一些关于@SMRUTISING的演示,那么你现在的问题是什么?
    Array
    (
        [0] => Array
            (
                [starttime] => 08:00
                [endtime] => 09:30
            )

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

    )