3v4l.org

run code in 300+ PHP versions simultaneously
<?php class myClass { private $a = [ 'foo-test' => [1], '-' => [2], 'bar-test' => [3] ]; private function _mySort($x, $y) { print_r($this->a); var_dump($x); var_dump($x == 'foo-test' || $x == '-' || $x == 'bar-test'); if (!isset($this->a[$x])) { throw new Exception('Missing X: "' . $x . '"'); } if (!isset($this->a[$y])) { throw new Exception('Missing Y: "' . $y . '"'); } return ($x < $y ? -1 : ($x > $y ? 1 : 0)); } public function __construct() { uksort($this->a, [$this, '_mySort']); } } new myClass();
Output for git.master, git.master_jit, rfc.property-hooks
Array ( [foo-test] => Array ( [0] => 1 ) [-] => Array ( [0] => 2 ) [bar-test] => Array ( [0] => 3 ) ) string(8) "foo-test" bool(true) Array ( [foo-test] => Array ( [0] => 1 ) [-] => Array ( [0] => 2 ) [bar-test] => Array ( [0] => 3 ) ) string(8) "bar-test" bool(true) Array ( [foo-test] => Array ( [0] => 1 ) [-] => Array ( [0] => 2 ) [bar-test] => Array ( [0] => 3 ) ) string(8) "foo-test" bool(true)

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:
56.46 ms | 402 KiB | 8 Q