3v4l.org

run code in 300+ PHP versions simultaneously
<?php var_dump(token_get_all('<?php abstract class A<$T1 isin B, $T2 isout C> '));
Output for git.master, git.master_jit
array(22) { [0]=> array(3) { [0]=> int(394) [1]=> string(6) "<?php " [2]=> int(1) } [1]=> array(3) { [0]=> int(397) [1]=> string(2) " " [2]=> int(1) } [2]=> array(3) { [0]=> int(358) [1]=> string(8) "abstract" [2]=> int(3) } [3]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [4]=> array(3) { [0]=> int(369) [1]=> string(5) "class" [2]=> int(3) } [5]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [6]=> array(3) { [0]=> int(313) [1]=> string(1) "A" [2]=> int(3) } [7]=> string(1) "<" [8]=> array(3) { [0]=> int(317) [1]=> string(3) "$T1" [2]=> int(3) } [9]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [10]=> array(3) { [0]=> int(313) [1]=> string(4) "isin" [2]=> int(3) } [11]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [12]=> array(3) { [0]=> int(313) [1]=> string(1) "B" [2]=> int(3) } [13]=> string(1) "," [14]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [15]=> array(3) { [0]=> int(317) [1]=> string(3) "$T2" [2]=> int(3) } [16]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [17]=> array(3) { [0]=> int(313) [1]=> string(5) "isout" [2]=> int(3) } [18]=> array(3) { [0]=> int(397) [1]=> string(1) " " [2]=> int(3) } [19]=> array(3) { [0]=> int(313) [1]=> string(1) "C" [2]=> int(3) } [20]=> string(1) ">" [21]=> array(3) { [0]=> int(397) [1]=> string(2) " " [2]=> int(3) } }
Output for rfc.property-hooks
array(22) { [0]=> array(3) { [0]=> int(396) [1]=> string(6) "<?php " [2]=> int(1) } [1]=> array(3) { [0]=> int(399) [1]=> string(2) " " [2]=> int(1) } [2]=> array(3) { [0]=> int(359) [1]=> string(8) "abstract" [2]=> int(3) } [3]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [4]=> array(3) { [0]=> int(370) [1]=> string(5) "class" [2]=> int(3) } [5]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [6]=> array(3) { [0]=> int(313) [1]=> string(1) "A" [2]=> int(3) } [7]=> string(1) "<" [8]=> array(3) { [0]=> int(317) [1]=> string(3) "$T1" [2]=> int(3) } [9]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [10]=> array(3) { [0]=> int(313) [1]=> string(4) "isin" [2]=> int(3) } [11]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [12]=> array(3) { [0]=> int(313) [1]=> string(1) "B" [2]=> int(3) } [13]=> string(1) "," [14]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [15]=> array(3) { [0]=> int(317) [1]=> string(3) "$T2" [2]=> int(3) } [16]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [17]=> array(3) { [0]=> int(313) [1]=> string(5) "isout" [2]=> int(3) } [18]=> array(3) { [0]=> int(399) [1]=> string(1) " " [2]=> int(3) } [19]=> array(3) { [0]=> int(313) [1]=> string(1) "C" [2]=> int(3) } [20]=> string(1) ">" [21]=> array(3) { [0]=> int(399) [1]=> string(2) " " [2]=> int(3) } }

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