3v4l.org

run code in 300+ PHP versions simultaneously
<?php class AliasesLoader { private $aliases = array(); /** * @param array $aliases */ public function __construct($aliases) { $this->setAliases($aliases); } public function register() { spl_autoload_register(array($this, 'load')); } public function load($class) { if ($this->hasAlias($class)) { class_alias($class, $this->getAlias($class)); } } protected function getAlias($class) { return $this->aliases[$class]; } protected function hasAlias($class) { return isset($this->aliases[$class]); } private function setAliases(array $aliases) { $this->aliases = $aliases; } } $a = new AliasesLoader(array('B' => 'A')); $a->register(); spl_autoload_register(function ($c) { eval('class '.$c.' {}'); }); new B();
Output for git.master, git.master_jit, rfc.property-hooks
Warning: Class "B" not found in /in/LOLRK on line 23

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