3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { public $foo = 1; protected $bar = 2; private $baz = 3; public function toArray() { $arr = array(); foreach ($this as $k => $v) { $arr[$k] = $v; } return $arr; } } $foo = new Foo; $a1 = (array)$foo; $a2 = $foo->toArray(); $a3 = array(); foreach ($foo as $k => $v) { $a3[$k] = $v; } var_dump($a1, $a2, $a3); // unrelated fun: var_dump($a1['*bar']); var_dump($a1['Foobaz']);
Output for git.master, git.master_jit, rfc.property-hooks
array(3) { ["foo"]=> int(1) ["*bar"]=> int(2) ["Foobaz"]=> int(3) } array(3) { ["foo"]=> int(1) ["bar"]=> int(2) ["baz"]=> int(3) } array(1) { ["foo"]=> int(1) } Warning: Undefined array key "*bar" in /in/vT2Fl on line 27 NULL Warning: Undefined array key "Foobaz" in /in/vT2Fl on line 28 NULL

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

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


preferences:
57.61 ms | 401 KiB | 8 Q