3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php class Item { private $i; public function __construct($i) { $this->i = $i; } } class Foo { // private $arr = [[new Item(1)], [new Item(2)], [new Item(3)]]; private $arr = array(array(1), array(2), array(3)); public function getItems() { return $this->arr; } } class Wrapper { private $i; public function __construct($i) { $this->i = $i; } } $obj = new Foo(); foreach ($obj->getItems() as &$item) { $item = new Wrapper($item[0]); } print_r($obj); print_r(php_version());
based on qUuhG
Output for 7.0.0 - 7.2.0
Foo Object ( [arr:Foo:private] => Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 2 ) [2] => Array ( [0] => 3 ) ) ) Fatal error: Uncaught Error: Call to undefined function php_version() in /in/gIgHm:39 Stack trace: #0 {main} thrown in /in/gIgHm on line 39
Process exited with code 255.
Output for 5.5.24 - 5.6.28
Foo Object ( [arr:Foo:private] => Array ( [0] => Array ( [0] => 1 ) [1] => Array ( [0] => 2 ) [2] => Array ( [0] => 3 ) ) ) Fatal error: Call to undefined function php_version() in /in/gIgHm on line 39
Process exited with code 255.
Output for 5.3.20 - 5.4.45
Fatal error: Cannot create references to elements of a temporary array expression in /in/gIgHm on line 35
Process exited with code 255.