3v4l.org

run code in 300+ PHP versions simultaneously
<?php trait A { protected static $_a; public static function setA($a) { static::$_a = $a; } public static function getA() { return static::$_a; } } class B { use A; public function __construct() { var_dump(static::$_a); } } A::setA('AAAA'); class C { use A; public function __construct() { var_dump(static::$_a); } } class D extends B {} new B; new C; new D; A::setA('CCCCC'); new B;
Output for git.master, git.master_jit, rfc.property-hooks
Deprecated: Calling static trait method A::setA is deprecated, it should only be called on a class using the trait in /in/6ttgL on line 27 Deprecated: Accessing static trait property A::$_a is deprecated, it should only be accessed on a class using the trait in /in/6ttgL on line 8 NULL NULL NULL Deprecated: Calling static trait method A::setA is deprecated, it should only be called on a class using the trait in /in/6ttgL on line 45 Deprecated: Accessing static trait property A::$_a is deprecated, it should only be accessed on a class using the trait in /in/6ttgL on line 8 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:
38.96 ms | 402 KiB | 8 Q