本当は残酷な PHP で引数をそのまま返す関数を作っておくと便利の話
で、new がないほうがより簡単になると思う。
<?php function instantiate($class_name) { if (class_exists($class_name)) { return new $class_name; } else { throw new Exception("Invalid class name \"$class_name\""); } } class Hoge { public function fuga() { return true; } } var_dump(instantiate('Hoge')->fuga());