3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ ['id' => 1, 'sort_code' => 4], ['id' => 2, 'sort_code' => 2], ['id' => 3], ['id' => 4, 'sort_code' => 8], ['id' => 5], ['id' => 6, 'sort_code' => 6] ]; uasort($array, function($a, $b) { echo "\n" . json_encode($a) . " -vs- " . json_encode($b) . " eval: "; echo $eval = (int)(isset($a['sort_code'], $b['sort_code']) && $a['sort_code'] > $b['sort_code']); return $eval; }); echo "\n---\n"; var_export($array); echo "\n======\n"; uasort($array, function($a, $b) { echo "\n" . json_encode($a) . " -vs- " . json_encode($b) . " eval: "; echo $eval = ($a['sort_code'] ?? 0) <=> ($b['sort_code'] ?? 0); return $eval; }); echo "\n---\n"; var_export($array);
Output for git.master, git.master_jit, rfc.property-hooks
{"id":1,"sort_code":4} -vs- {"id":2,"sort_code":2} eval: 1 {"id":1,"sort_code":4} -vs- {"id":3} eval: 0 {"id":3} -vs- {"id":4,"sort_code":8} eval: 0 {"id":4,"sort_code":8} -vs- {"id":5} eval: 0 {"id":5} -vs- {"id":6,"sort_code":6} eval: 0 --- array ( 1 => array ( 'id' => 2, 'sort_code' => 2, ), 0 => array ( 'id' => 1, 'sort_code' => 4, ), 2 => array ( 'id' => 3, ), 3 => array ( 'id' => 4, 'sort_code' => 8, ), 4 => array ( 'id' => 5, ), 5 => array ( 'id' => 6, 'sort_code' => 6, ), ) ====== {"id":2,"sort_code":2} -vs- {"id":1,"sort_code":4} eval: -1 {"id":1,"sort_code":4} -vs- {"id":3} eval: 1 {"id":2,"sort_code":2} -vs- {"id":3} eval: 1 {"id":1,"sort_code":4} -vs- {"id":4,"sort_code":8} eval: -1 {"id":4,"sort_code":8} -vs- {"id":5} eval: 1 {"id":1,"sort_code":4} -vs- {"id":5} eval: 1 {"id":2,"sort_code":2} -vs- {"id":5} eval: 1 {"id":3} -vs- {"id":5} eval: 0 {"id":4,"sort_code":8} -vs- {"id":6,"sort_code":6} eval: 1 {"id":1,"sort_code":4} -vs- {"id":6,"sort_code":6} eval: -1 --- array ( 2 => array ( 'id' => 3, ), 4 => array ( 'id' => 5, ), 1 => array ( 'id' => 2, 'sort_code' => 2, ), 0 => array ( 'id' => 1, 'sort_code' => 4, ), 5 => array ( 'id' => 6, 'sort_code' => 6, ), 3 => array ( 'id' => 4, 'sort_code' => 8, ), )

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
27.49 ms | 409 KiB | 5 Q