3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Test { public static $map = [ 'lolo' => 'Foo', ]; public static function get($vars, $params) { return new self::$map[$varrs]($params); } } class Foo { public $r; public function __construct($r) { $this->r = $r; } } $varrs = 'lolo'; $params = 213123; $temp = Test::get($varrs, $params); var_dump($temp, $temp->r);

preferences:
74.76 ms | 402 KiB | 5 Q