3v4l.org

run code in 300+ PHP versions simultaneously
<?php $unsorted = [ "3470U11", "3470E11", "3470S13", "3470G11", "3470S12", "3470S11", "3470E12", "3470U12", "3470G13", "3470G12", "3470E13", "3470U13" ]; $sortBy = ['G', 'D', 'S', 'U', 'E', 'T', 'A', 'L']; $priority = array_flip($sortBy); usort( $unsorted, fn($a, $b) => ($priority[substr($a, -3, 1)] <=> $priority[substr($b, -3, 1)]) ?: $a <=> $b ); var_export ($unsorted);

preferences:
51.13 ms | 402 KiB | 5 Q