3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ ['apn' => 345345345, 'sqft' => 1200, 'address' => '323 Pacific Ave.'], ['apn' => 345345342, 'sqft' => 1421, 'address' => '324 Pacific Ave.'], ['apn' => 345345346, 'sqft' => 1012, 'address' => '325 Pacific Ave.'], ['apn' => 345345347, 'sqft' => 1093, 'address' => '328 Pacific Ave.'], ['apn' => 345345353, 'sqft' => 1121, 'address' => '12 Lincoln Ave.'], ['apn' => 345345351, 'sqft' => 1643, 'address' => '13 Lincoln Ave.'], ['apn' => 345345352, 'sqft' => 1222, 'address' => '14 Lincoln Ave.'] ]; $isEvens = []; $numbers = []; $streets = []; foreach ($array as ['address' => $a]) { if (sscanf($a, "%s %[^\n]", $n, $s) === 2) { $isEvens[] = !((int)$n & 1); $numbers[] = $n; $streets[] = $s; } else { $isEvens[] = !((int)$a & 1); $numbers[] = $a; $streets[] = $a; } } array_multisort( $streets, $isEvens, $numbers, $array ); var_export($array);

preferences:
35.25 ms | 406 KiB | 5 Q