3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = [ 'children' => [ 'default.php' => [], 'test.php' => [], 'test.bak' => [], 'default-2.php' => [], 'align-2.php' => [], 'align.tmp' => [], ] ]; uksort($arr['children'], function($a, $b){ $a = pathinfo($a); $b = pathinfo($b); return $a['filename'] == $b['filename'] ? $a['basename'] <=> $b['basename'] : $a['filename'] <=> $b['filename']; }); print_r(array_keys($arr['children']));

preferences:
30.73 ms | 407 KiB | 5 Q