3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data = [ 'A1', 'A2', 'A5', 'A10', 'B2', 'B4', 'C10', 'B5', 'C1', 'B1', 'C2', ]; usort( $data, function($a, $b) { sscanf($a, '%[A-Z]%d', $ac, $ar); sscanf($b, '%[A-Z]%d', $bc, $br); return ($ar == $br) ? $ac <=> $bc : $ar <=> $br; } ); var_dump($data);

preferences:
59.23 ms | 402 KiB | 5 Q