- array_reverse: documentation ( source)
- var_export: documentation ( source)
- array_flip: documentation ( source)
- uksort: documentation ( source)
<?php
$aShips = ['0_204' => 1, '0_209' => 1.5,'0_205' => 2, '0_206' => 3, '0_207' => 4];
$order = ["0_206", "0_205", "0_204", "0_207"];
$lookup = array_flip(array_reverse($order));
uksort($aShips, function($a, $b) use ($lookup) {
return ($lookup[$b] ?? -1) <=> ($lookup[$a] ?? -1);
});
var_export($aShips);