3v4l.org

run code in 300+ PHP versions simultaneously
<?php $tokens = token_get_all('<?php $a = 1 + 2; echo $a ?>'); var_dump($tokens); foreach($tokens as $token) { echo "{$token[0]} ({$token[1]})"; }
Output for git.master, git.master_jit
array(17) { [0]=> array(3) { [0]=> int(394) [1]=> string(6) "<?php " [2]=> int(1) } [1]=> array(3) { [0]=> int(317) [1]=> string(2) "$a" [2]=> int(1) } [2]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [3]=> string(1) "=" [4]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [5]=> array(3) { [0]=> int(311) [1]=> string(1) "1" [2]=> int(1) } [6]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [7]=> string(1) "+" [8]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [9]=> array(3) { [0]=> int(311) [1]=> string(1) "2" [2]=> int(1) } [10]=> string(1) ";" [11]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [12]=> array(3) { [0]=> int(328) [1]=> string(4) "echo" [2]=> int(1) } [13]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [14]=> array(3) { [0]=> int(317) [1]=> string(2) "$a" [2]=> int(1) } [15]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(1) } [16]=> array(3) { [0]=> int(396) [1]=> string(2) "?>" [2]=> int(1) } } 394 (<?php )317 ($a)397 ( ) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 = ()397 ( )311 (1)397 ( ) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 + ()397 ( )311 (2) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 ; ()397 ( )328 (echo)397 ( )317 ($a)397 ( )396 (?>)
Output for rfc.property-hooks
array(17) { [0]=> array(3) { [0]=> int(396) [1]=> string(6) "<?php " [2]=> int(1) } [1]=> array(3) { [0]=> int(317) [1]=> string(2) "$a" [2]=> int(1) } [2]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [3]=> string(1) "=" [4]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [5]=> array(3) { [0]=> int(311) [1]=> string(1) "1" [2]=> int(1) } [6]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [7]=> string(1) "+" [8]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [9]=> array(3) { [0]=> int(311) [1]=> string(1) "2" [2]=> int(1) } [10]=> string(1) ";" [11]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [12]=> array(3) { [0]=> int(329) [1]=> string(4) "echo" [2]=> int(1) } [13]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [14]=> array(3) { [0]=> int(317) [1]=> string(2) "$a" [2]=> int(1) } [15]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(1) } [16]=> array(3) { [0]=> int(398) [1]=> string(2) "?>" [2]=> int(1) } } 396 (<?php )317 ($a)399 ( ) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 = ()399 ( )311 (1)399 ( ) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 + ()399 ( )311 (2) Warning: Uninitialized string offset 1 in /in/ONZAS on line 6 ; ()399 ( )329 (echo)399 ( )317 ($a)399 ( )398 (?>)

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:
46.13 ms | 405 KiB | 8 Q