3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php // int isn't a reserved word, right? // So this should work fine! const int = 7; // Let's try using it! var_dump(int); /* Wait, what? A parse error? Why, you might ask? (int) is a special case in the lexer. Turns out that casts are lexed specially. Why? Probably to stop the type names being reserved words... that worked out spectacularly, didn't it? The best bit, though, is that this has been around since PHP 3, so it's most likely the fault of Zeev Suraski or Andi Gutmans. Good job. */

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

Output for Typed properties v2
Parse error: syntax error, unexpected '(int)' (int) (T_INT_CAST) in /in/DMG7b on line 8
Output for Array change keys
Parse error: syntax error, unexpected '(int)' (int) (T_INT_CAST) in /in/DMG7b on line 8
Output for Lexical anon
Parse error: syntax error, unexpected '(int)' (int) (T_INT_CAST) in /in/DMG7b on line 8

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