3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = json_decode('[ { "id": "222", "name": "A", "shouldgolast": "N" }, { "id": "261", "name": "B", "shouldgolast": "Y" }, { "id": "262", "name": "D", "shouldgolast": "Y" }, { "id": "262", "name": "E", "shouldgolast": "Y" }, { "id": "262", "name": "F", "shouldgolast": "Y" }, { "id": "262", "name": "G", "shouldgolast": "Y" }, { "id": "262", "name": "H", "shouldgolast": "Y" }, { "id": "262", "name": "C", "shouldgolast": "Y" }, { "id": "222", "name": "W", "shouldgolast": "N" }, { "id": "222", "name": "X", "shouldgolast": "N" }, { "id": "222", "name": "Y", "shouldgolast": "N" } ]', true); $yes_ptr = count($array) - 1; for($i = count($array) - 1; $i >= 0; -- $i){ if($array[$i]['shouldgolast'] == 'Y'){ $temp = $array[$yes_ptr]; $array[$yes_ptr--] = $array[$i]; $array[$i] = $temp; } } print_r($array);
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
Array ( [0] => Array ( [id] => 222 [name] => A [shouldgolast] => N ) [1] => Array ( [id] => 222 [name] => Y [shouldgolast] => N ) [2] => Array ( [id] => 222 [name] => W [shouldgolast] => N ) [3] => Array ( [id] => 222 [name] => X [shouldgolast] => N ) [4] => Array ( [id] => 261 [name] => B [shouldgolast] => Y ) [5] => Array ( [id] => 262 [name] => D [shouldgolast] => Y ) [6] => Array ( [id] => 262 [name] => E [shouldgolast] => Y ) [7] => Array ( [id] => 262 [name] => F [shouldgolast] => Y ) [8] => Array ( [id] => 262 [name] => G [shouldgolast] => Y ) [9] => Array ( [id] => 262 [name] => H [shouldgolast] => Y ) [10] => Array ( [id] => 262 [name] => C [shouldgolast] => Y ) )
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Array ( [0] => Array ( [id] => 222 [name] => A [shouldgolast] => N ) [1] => Array ( [id] => 222 [name] => Y [shouldgolast] => N ) [2] => Array ( [id] => 222 [name] => W [shouldgolast] => N ) [3] => Array ( [id] => 222 [name] => X [shouldgolast] => N ) [4] => Array ( [id] => 261 [name] => B [shouldgolast] => Y ) [5] => Array ( [id] => 262 [name] => D [shouldgolast] => Y ) [6] => Array ( [id] => 262 [name] => E [shouldgolast] => Y ) [7] => Array ( [id] => 262 [name] => F [shouldgolast] => Y ) [8] => Array ( [id] => 262 [name] => G [shouldgolast] => Y ) [9] => Array ( [id] => 262 [name] => H [shouldgolast] => Y ) [10] => Array ( [id] => 262 [name] => C [shouldgolast] => Y ) )

preferences:
117.9 ms | 405 KiB | 180 Q