3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = array( array( 'name' => 'A1', 'status' => 'Not Available', 'statusid' => 4, 'num' => 33, ), array( 'name' => 'A2', 'status' => 'Available', 'statusid' => 1, 'num' => 39, ), array( 'name' => 'A3', 'status' => 'Busy', 'statusid' => 3, 'num' => 55, ), array( 'name' => 'A4', 'status' => 'Available', 'statusid' => 1, 'num' => 54, ), array( 'name' => 'A5', 'status' => 'Busy', 'statusid' => 3, 'num' => 33, ), ); $new_array = array(); foreach($array as $a) { if(!isset($new_array[$a['num']]) || $a['statusid'] < $new_array[$a['num']]['statusid']) { $new_array[$a['num']] = $a; } } print_r($new_array); for($i=0;$i<6;$i++){ echo "<hr>"; var_dump($new_array[$i]); }
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.7
Array ( [33] => Array ( [name] => A5 [status] => Busy [statusid] => 3 [num] => 33 ) [39] => Array ( [name] => A2 [status] => Available [statusid] => 1 [num] => 39 ) [55] => Array ( [name] => A3 [status] => Busy [statusid] => 3 [num] => 55 ) [54] => Array ( [name] => A4 [status] => Available [statusid] => 1 [num] => 54 ) ) <hr> Warning: Undefined array key 0 in /in/HbP5o on line 45 NULL <hr> Warning: Undefined array key 1 in /in/HbP5o on line 45 NULL <hr> Warning: Undefined array key 2 in /in/HbP5o on line 45 NULL <hr> Warning: Undefined array key 3 in /in/HbP5o on line 45 NULL <hr> Warning: Undefined array key 4 in /in/HbP5o on line 45 NULL <hr> Warning: Undefined array key 5 in /in/HbP5o on line 45 NULL
Output for 5.6.0 - 5.6.26, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.31, 7.4.0 - 7.4.33
Array ( [33] => Array ( [name] => A5 [status] => Busy [statusid] => 3 [num] => 33 ) [39] => Array ( [name] => A2 [status] => Available [statusid] => 1 [num] => 39 ) [55] => Array ( [name] => A3 [status] => Busy [statusid] => 3 [num] => 55 ) [54] => Array ( [name] => A4 [status] => Available [statusid] => 1 [num] => 54 ) ) <hr> Notice: Undefined offset: 0 in /in/HbP5o on line 45 NULL <hr> Notice: Undefined offset: 1 in /in/HbP5o on line 45 NULL <hr> Notice: Undefined offset: 2 in /in/HbP5o on line 45 NULL <hr> Notice: Undefined offset: 3 in /in/HbP5o on line 45 NULL <hr> Notice: Undefined offset: 4 in /in/HbP5o on line 45 NULL <hr> Notice: Undefined offset: 5 in /in/HbP5o on line 45 NULL
Output for 7.3.32 - 7.3.33
Array ( [33] => Array ( [name] => A5 [status] => Busy [statusid] => 3 [num] => 33 ) [39] => Array ( [name] => A2 [status] => Available [statusid] => 1 [num] => 39 ) [55] => Array ( [name] => A3 [status] => Busy [statusid] => 3 [num] => 55 ) [54] => Array ( [name] => A4 [status] => Available [statusid] => 1 [num] => 54 ) ) <hr>NULL <hr>NULL <hr>NULL <hr>NULL <hr>NULL <hr>NULL

preferences:
164.95 ms | 406 KiB | 216 Q