3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ [ "ARRIVAL" => '2022-03-08', "INFO" => "TEST", "V1_PROZ_WET" => 7, "V1_ABS_WET" => 200, "V1_PROZ" => 4, "V1_ABS" => 150, "V2_PROZ_WET" => 10, "V2_ABS_WET" => 250, "V2_PROZ" => 5, "V2_ABS" => 180, "BEZ" => "TEST", "WET_TOTAL" => 500, "DRY_TOTAL" => 300 ], [ "ARRIVAL" => '2022-03-07', "INFO" => "TEST", "V1_PROZ_WET" => 7, "V1_ABS_WET" => 200, "V1_PROZ" => 4, "V1_ABS" => 150, "V2_PROZ_WET" => 10, "V2_ABS_WET" => 250, "V2_PROZ" => 5, "V2_ABS" => 180, "BEZ" => "TEST", "WET_TOTAL" => 500, "DRY_TOTAL" => 300 ], [ "ARRIVAL" => '2022-03-06', "INFO" => "TEST", "V1_PROZ_WET" => 7, "V1_ABS_WET" => 200, "V1_PROZ" => 4, "V1_ABS" => 150, "V2_PROZ_WET" => 10, "V2_ABS_WET" => 250, "V2_PROZ" => 5, "V2_ABS" => 180, "BEZ" => "TEST", "WET_TOTAL" => 500, "DRY_TOTAL" => 300 ], ]; foreach ($array as &$row) { uksort($row, fn($a, $b) => ($b === 'INFO') <=> ($a === 'INFO') ?: ($b === 'BEZ') <=> ($a === 'BEZ') ?: ($b === 'WET_TOTAL') <=> ($a === 'WET_TOTAL') ?: ($b === 'DRY_TOTAL') <=> ($a === 'DRY_TOTAL') ?: ($a === 'ARRIVAL') <=> ($b === 'ARRIVAL') ?: str_contains($a, '_WET') <=> str_contains($b, '_WET') ?: str_contains($b, '_PROZ') <=> str_contains($a, '_PROZ') ?: str_contains($b, '_ABS') <=> str_contains($a, '_ABS') ?: $a <=> $b ); } var_export($array);

preferences:
30.29 ms | 406 KiB | 5 Q