php中如何获取多维数组的数组差值?

我有 2 个两个数组


$schedule = [

    "Monday" => [0 => "12:00", 1 => "01:20"],

    "Tuesday" => [0 => "04:20",1 => "12:00"],

];


$bookedSlots = [

    ["Monday" => "01:20"],

    ["Tuesday" => "04:20" ] 

];

现在我想要答案或结果返回剩余可用时段的数组,其中应从计划中删除预订的时段。就像下面给出的结果。


$availableSlots = $schedule - $bookedSlots; // [ "Monday" => [ 0 => "12:00"], "Tuesday" =>[ 0 => "12:00" ];


Smart猫小萌
浏览 152回答 1
1回答

开满天机

好的。所以在这里我写了一个辅助函数来概括解决方案。您可以使用下面提到的功能。function find_diff($schedule, $booked_slots){  $diff = [];  foreach ($schedule as $day =>  $times) {    $day_wise_slots = isset($booked_slots[$day]) ? $booked_slots[$day] : [];    if (!is_array($day_wise_slots)) $day_wise_slots = [$day_wise_slots];    $diff[$day] = array_diff($times, $day_wise_slots);  }  return $diff;}使用的函数:isset和array_diff。
打开App,查看更多内容
随时随地看视频慕课网APP