Jen dodám že argument unpacking je od PHP 5.6.
V případě starších verzí bude potřeba pro constructor použít reflexi - http://php.net/manual/en/reflectionclass.newinstan ceargs.php.
$classReflection = new ReflectionClass("MyClass");
$params = [$set[0], $set[1] . 'foo', 'bar', $set[3]];
$obj = $classReflection->newInstanceArgs($params);