3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = ['green', '', 'red', '', 'blue', '', 'yellow', '', 'purple', '', 'white', '', 'black']; usort($array, function($a) { static $i = 0; var_dump($a, ++$i); return (int)!$a;} ); var_export($array); echo "\n---\n"; $array = ['green', '', 'red', '', 'blue', '', 'yellow', '', 'purple', '', 'white', '', 'black']; usort($array, function($a, $b) { static $i = 0; var_dump($a, ++$i); return !$a <=> !$b;} ); var_export($array);
Output for 8.1.32 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
string(5) "green" int(1) string(0) "" int(2) string(5) "green" int(3) string(0) "" int(4) string(3) "red" int(5) string(0) "" int(6) string(0) "" int(7) string(3) "red" int(8) string(0) "" int(9) string(0) "" int(10) string(4) "blue" int(11) string(0) "" int(12) string(0) "" int(13) string(3) "red" int(14) string(4) "blue" int(15) string(0) "" int(16) string(0) "" int(17) string(4) "blue" int(18) string(6) "yellow" int(19) string(0) "" int(20) string(0) "" int(21) string(6) "yellow" int(22) string(0) "" int(23) string(0) "" int(24) string(0) "" int(25) string(6) "purple" int(26) string(0) "" int(27) string(0) "" int(28) string(0) "" int(29) string(0) "" int(30) string(6) "yellow" int(31) string(6) "purple" int(32) string(0) "" int(33) string(0) "" int(34) string(0) "" int(35) string(6) "purple" int(36) string(5) "white" int(37) string(0) "" int(38) string(0) "" int(39) string(0) "" int(40) string(5) "white" int(41) string(0) "" int(42) array ( 0 => 'green', 1 => 'red', 2 => 'blue', 3 => 'yellow', 4 => 'purple', 5 => 'white', 6 => 'black', 7 => '', 8 => '', 9 => '', 10 => '', 11 => '', 12 => '', ) --- string(5) "green" int(1) string(0) "" int(2) string(5) "green" int(3) string(0) "" int(4) string(0) "" int(5) string(0) "" int(6) string(3) "red" int(7) string(0) "" int(8) string(0) "" int(9) string(0) "" int(10) string(3) "red" int(11) string(4) "blue" int(12) string(0) "" int(13) string(0) "" int(14) string(0) "" int(15) string(6) "yellow" int(16) string(0) "" int(17) string(0) "" int(18) string(0) "" int(19) string(0) "" int(20) string(0) "" int(21) string(6) "yellow" int(22) string(6) "purple" int(23) string(0) "" int(24) string(0) "" int(25) string(0) "" int(26) string(0) "" int(27) string(5) "white" int(28) string(0) "" int(29) array ( 0 => 'green', 1 => 'red', 2 => 'blue', 3 => 'yellow', 4 => 'purple', 5 => 'white', 6 => 'black', 7 => '', 8 => '', 9 => '', 10 => '', 11 => '', 12 => '', )

preferences:
37.06 ms | 1015 KiB | 4 Q