3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class MyClass { public $prop1 = "I'm a class property!"; public function __construct() { echo 'The class "', __CLASS__, '" was initiated!<br />'; } public function __destruct() { echo 'The class "', __CLASS__, '" was destroyed.<br />'; } public function __toString() { echo "Using the toString method: "; return $this->getProperty(); } public function setProperty($newval) { $this->prop1 = $newval; } public function getProperty() { return $this->prop1 . "<br />"; } } // Create a new object $obj = new MyClass; // Output the object as a string echo $obj->_toString(); // Destroy the object unset($obj); // Output a message at the end of the file echo "End of file.<br />"; ?>
Output for 7.0.0 - 7.1.0
The class "MyClass" was initiated!<br /> Fatal error: Uncaught Error: Call to undefined method MyClass::_toString() in /in/3eZ4q:38 Stack trace: #0 {main} thrown in /in/3eZ4q on line 38
Process exited with code 255.
Output for 5.0.0 - 5.1.2, hhvm-3.10.0 - 3.12.0
The class "MyClass" was initiated!<br /> Fatal error: Call to undefined method MyClass::_toString() in /in/3eZ4q on line 38 The class "MyClass" was destroyed.<br />
Process exited with code 255.
Output for 5.1.3 - 5.6.28
The class "MyClass" was initiated!<br /> Fatal error: Call to undefined method MyClass::_toString() in /in/3eZ4q on line 38
Process exited with code 255.
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/3eZ4q on line 5
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/3eZ4q on line 5
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/3eZ4q on line 5
Process exited with code 255.