3v4l.org

run code in 300+ PHP versions simultaneously
<?php function foo(...$args) { // This used to be list<positive-int|0> :-( var_dump(array_keys($args)); } foo(3, 4, 1, 2, 5, 7); foo(f: 3, g: 4, a: 1, b: 2, z: 5, w: 7);
based on XUL63

Shows result from various feature-branches currently under review from the php developers. Contact me to have additional branches featured.

Output for branch master
array(6) { [0]=> int(0) [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) [5]=> int(5) } array(6) { [0]=> string(1) "f" [1]=> string(1) "g" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" [5]=> string(1) "w" }
Output for branch master_jit
array(6) { [0]=> int(0) [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) [5]=> int(5) } array(6) { [0]=> string(1) "f" [1]=> string(1) "g" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" [5]=> string(1) "w" }
Output for branch partials
array(6) { [0]=> int(0) [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) [5]=> int(5) } array(6) { [0]=> string(1) "f" [1]=> string(1) "g" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" [5]=> string(1) "w" }
Output for branch enumerations
array(6) { [0]=> int(0) [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) [5]=> int(5) } array(6) { [0]=> string(1) "f" [1]=> string(1) "g" [2]=> string(1) "a" [3]=> string(1) "b" [4]=> string(1) "z" [5]=> string(1) "w" }

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