array_uintersect意外结果

时间:2018-10-12 12:25:49

标签: arrays multidimensional-array intersect

我想知道多维数组的相交。我在下面尝试了代码,但结果不好。我需要一个新数组( NewDochazka ),其中包含日期为2018-09-(22/25/28)的相交数据。这可能是一个简单的问题,我没有看到。谢谢

我的代码:

// Multidimensional Arrays   
    $dochazka = array(
        "dochazka-0001" => array('2018-09-22', '06:30:05'),
        "dochazka-0002" => array('2018-09-22', '09:09:41'),
        "dochazka-0003" => array('2018-09-24', '04:30:05'),
        "dochazka-0004" => array('2018-09-25', '07:09:21'),
        "dochazka-0005" => array('2018-09-26', '21:09:09'),
        "dochazka-0006" => array('2018-09-26', '21:09:52'),
        "dochazka-0007" => array('2018-09-28', '10:09:31'),
        "dochazka-0008" => array('2018-09-28', '10:33:12'),
        "dochazka-0009" => array('2018-09-28', '10:35:29'),
    );

    $cinnosti = array(
        "cinnost-0001" => array('Project 2', '2018-09-22', '07:23:56'),
        "cinnost-0002" => array('Project 1', '2018-09-22', '07:26:56'),
        "cinnost-0003" => array('Project 1', '2018-09-25', '13:09:53'),
        "cinnost-0004" => array('Project 1', '2018-09-28', '10:35:29'),
    );

// Intersect of dates
    $NewDochazka = array_uintersect($dochazka, $cinnosti, 'prunikHodnot');
        function prunikHodnot($a, $b){
            return strcmp($a[0], $b[1]);  
        }

结果

$NewDochazka = array(
    "dochazka-0008" => array('2018-09-28', '10:33:12'),
);

预期

$NewDochazka = array(
    "dochazka-0001" => array('2018-09-22', '06:30:05'),
    "dochazka-0002" => array('2018-09-22', '09:09:41'),
    "dochazka-0004" => array('2018-09-25', '07:09:21'),
    "dochazka-0007" => array('2018-09-28', '10:09:31'),
    "dochazka-0008" => array('2018-09-28', '10:33:12'),
    "dochazka-0009" => array('2018-09-28', '10:35:29'),
);

0 个答案:

没有答案