3v4l.org

run code in 300+ PHP versions simultaneously
<?php $sort_me = [ ["file" => "Desert.jpg"], ["file" => "What.jpg"], ["file" => "Hello.jpg"], ["file" => "Test.jpg"], ["file" => "Goodness.jpg"], ]; $sort_order = ["Test.jpg", "Hello.jpg", "NotFound.jpg"]; $lookup = array_flip($sort_order); $fallback = count($sort_order); usort($sort_me, function($a, $b) use ($lookup, $fallback) { return [$lookup[$a['file']] ?? $fallback, $a['file']] <=> [$lookup[$b['file']] ?? $fallback, $b['file']]; }); var_export($sort_me);

preferences:
28.57 ms | 406 KiB | 5 Q