是否存在一行代码(是的,我喜欢它们),可以根据函数返回的字符串创建一个类的新实例?
$obj = new {functionThatReturnsAStringValue()}();
$obj = ($class = functionThatReturnsAStringValue()) ? new $class() : null;
function getObject()
{
return 'DateTime';
}
$datetime = call_user_func(function ($obj) { return new $obj; }, getObject());
call_user_func()
不是最佳实践。 - Barif
functionThatReturnsAStringValue()
返回false
,则您可以将: null;
更改为new OtherClass()
。 - Barif