3v4l.org

run code in 300+ PHP versions simultaneously
<?php $starttime = '5'; $endtime = '17'; $timings = array( '0' => '12AM', '1' => '1AM', '2' => '2AM', '3' => '3AM', '4' => '4AM', '5' => '5AM', '6' => '6AM', '7' => '7AM', '8' => '8AM', '9' => '9AM', '10' => '10AM', '11' => '11AM', '12' => '12PM', '13' => '1PM', '14' => '2PM', '15' => '3PM', '16' => '4PM', '17' => '5PM', '18' => '6PM', '19' => '7PM', '20' => '8PM', '21' => '9PM', '22' => '10PM', '23' => '11PM', ); function diffKeys($timings, $starttime, $endtime) { return array_diff_key($timings, array_flip(range($starttime, $endtime))); } function spliceKeys($timings, $starttime, $endtime) { array_splice($timings, $starttime, $endtime - $starttime); return $timings; } function sliceKeys($timings, $starttime, $endtime) { return array_merge( array_slice($timings, 0, $starttime), array_slice($timings, $endtime + 1) ); } function skipKeys($timings, $starttime, $endtime) { $result = []; foreach ($timings as $military => $timing) { if ($military >= $starttime && $military <= $endtime) { continue; } $result[$military] = $timing; } return $result; } function unsetKeys($timings, $starttime, $endtime) { $result = []; foreach ($timings as $military => $timing) { if ($military >= $starttime && $military <= $endtime) { unset($timings[$military]); } } return $timings; } var_export(diffKeys($timings, $starttime, $endtime)); echo "\n---\n"; var_export(spliceKeys($timings, $starttime, $endtime)); echo "\n---\n"; var_export(sliceKeys($timings, $starttime, $endtime)); echo "\n---\n"; var_export(skipKeys($timings, $starttime, $endtime)); echo "\n---\n"; var_export(unsetKeys($timings, $starttime, $endtime));

preferences:
24.3 ms | 410 KiB | 5 Q