3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = [ 1 => [ "opens_at" => "10:00", "closes_at" => "18:00" ], 2 => [ "opens_at" => "10:00", "closes_at" => "18:00" ], 3 => [ "opens_at" => "10:00", "closes_at" => "18:00" ], 4 => [ "opens_at" => "14:00", "closes_at" => "17:00" ], 5 => [ "opens_at" => "14:00", "closes_at" => "17:00" ], 6 => [ "opens_at" => "18:00", "closes_at" => "19:00" ] ]; $groups = []; foreach($a as $dayNumber => $w){ if(!array_key_exists($w['opens_at'] . '-' . $w['closes_at'], $groups)){ $groups[$w['opens_at'] . '-' . $w['closes_at']] = []; } $groups[$w['opens_at'] . '-' . $w['closes_at']][] = $dayNumber; } $res = array_map(function($v){ return implode(', ', $v); }, $groups); var_dump(array_flip($res));

preferences:
15.7 ms | 407 KiB | 5 Q