3v4l.org

run code in 300+ PHP versions simultaneously
<?php class t { const A = 1; function __construct() { $r = new ReflectionClass($this); var_dump($r->hasConstant('A')); var_dump($r->hasConstant('c')); var_dump($r->hasConstant('A'), self::A); } protected function getA() { return self::A; } protected function getB() { return self::B; } } class s extends t { const A = 2; const B = 3; function __construct() { $r = new ReflectionClass($this); var_dump($r->hasConstant('A'), self::A, $this->getB()); } } $t = new t; $s = new s;
Output for git.master, git.master_jit, rfc.property-hooks
bool(true) bool(false) bool(true) int(1) Fatal error: Uncaught Error: Undefined constant t::B in /in/QDprJ:17 Stack trace: #0 /in/QDprJ(25): t->getB() #1 /in/QDprJ(29): s->__construct() #2 {main} thrown in /in/QDprJ on line 17
Process exited with code 255.

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:
70.7 ms | 401 KiB | 8 Q