3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class values implements \Iterator{ private $_data = null; // array or object private $_keys = array(); private $_key = false; public function __construct($data = null){ if (null !== $data){ $this->_data = $data; } } // ------------ \Iterator implementation public function current(){ return $this->{$this->_key}; } public function key(){ return $this->_key; } public function next(){ $this->_key = \next($this->_keys); } public function rewind(){ $this->_keys = []; foreach ($this->_data as $k => $v){ $this->_keys[] = $k; } $this->_key = \reset($this->_keys); } public function valid(){ if (false === $this->_key){ return false; } return isset($this->{$this->_key}); } } $values = new values(new DateTime()); foreach($values as $k => $v) { var_dump($k, $v); }
Output for 5.5.0 - 7.1.0
Output for 5.4.0 - 5.4.45
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.' in /in/iRXke:37 Stack trace: #0 /in/iRXke(37): DateTime->__construct() #1 {main} thrown in /in/iRXke on line 37
Process exited with code 255.
Output for 5.3.0 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/iRXke on line 23
Process exited with code 255.
Output for 5.2.3 - 5.2.17
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/iRXke on line 3 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/iRXke on line 20 Parse error: syntax error, unexpected '[' in /in/iRXke on line 23
Process exited with code 255.
Output for 5.1.0 - 5.2.2
<br /> <b>Warning</b>: Unexpected character in input: '\' (ASCII=92) state=1 in <b>/in/iRXke</b> on line <b>3</b><br /> <br /> <b>Warning</b>: Unexpected character in input: '\' (ASCII=92) state=1 in <b>/in/iRXke</b> on line <b>20</b><br /> <br /> <b>Parse error</b>: syntax error, unexpected '[' in <b>/in/iRXke</b> on line <b>23</b><br />
Process exited with code 255.
Output for 5.0.0 - 5.0.5
<br /> <b>Warning</b>: Unexpected character in input: '\' (ASCII=92) state=1 in <b>/in/iRXke</b> on line <b>3</b><br /> <br /> <b>Warning</b>: Unexpected character in input: '\' (ASCII=92) state=1 in <b>/in/iRXke</b> on line <b>20</b><br /> <br /> <b>Parse error</b>: parse error, unexpected '[' in <b>/in/iRXke</b> on line <b>23</b><br />
Process exited with code 255.
Output for 4.4.2 - 4.4.9
<br /> <b>Parse error</b>: syntax error, unexpected T_STRING, expecting '{' in <b>/in/iRXke</b> on line <b>3</b><br />
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
<br /> <b>Parse error</b>: parse error, unexpected T_STRING, expecting '{' in <b>/in/iRXke</b> on line <b>3</b><br />
Process exited with code 255.
Output for 4.3.2 - 4.3.4
<br /> <b>Parse error</b>: parse error, expecting `'{'' in <b>/in/iRXke</b> on line <b>3</b><br />
Process exited with code 255.