3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php class Greeter { private $boss; private $guests = array(); function __construct($boss) { $this->boss = $boss; } // returns welcome message for last guest public function greet() { if(count($this->guests) == 0){ $name = null; } else{ $name = array_pop($this->guests); $this->guests = array(); } if ($name == $this->boss) { return 'Very very welcome, '.$name; } else { return 'Welcome, '. $name; } } public function enters($name) { array_push($this->guests,$name); } } // For testing purposes (do not submit uncommented): $g = new Greeter('Chuck'); $g->enters('John'); $g->enters('John2'); echo $g->greet(); echo $g->greet();
Output for 5.0.0 - 7.3.1
Welcome, John2Welcome,
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/rrdm5 on line 4
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/rrdm5 on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/rrdm5 on line 4
Process exited with code 255.