3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Base { protected static $cached = null; public static function describe() { echo "--> " . ($calculated = "I am a " . get_called_class() . "\n"); if (static::$cached === null) { static::$cached = $calculated; } return static::$cached; } } class Animal extends Base { } class Cat extends Animal { } class Dog extends Animal { } echo Cat::describe(); echo Dog::describe(); echo Animal::describe();
Output for git.master, git.master_jit, rfc.property-hooks
--> I am a Cat I am a Cat --> I am a Dog I am a Cat --> I am a Animal I am a Cat

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