php - 通过将参数数组传递给 __construct() 来创建对象的函数?
问题描述
我想知道是否有人知道完全实用地创建类对象的函数,类似于 call_user_func_array() 的工作方式。我想要做的是将不同数量的参数传递给 __construct()。
我需要类似的东西:
$class = create_object('myobject', $array);
有以下行为;
$class = new myobject($array[0], $array[1], $array[2], ...);
注意:这适用于通用框架组件,因此不能将整个数组作为第一个构造参数传递。
解决方案
您可以使用 PHP 的功能来做到这一点。您可以将数组解压缩为参数列表:
function create_object($type, array $args = [])
{
return new $type(...$args);
}
不过不确定是否需要这样做。
推荐阅读
- postgresql - 如何在 POSTGRESQL 服务器中对具有 TLS 配置的用户使用基于 SCRAM-SHA-256 的身份验证?
- ontology - virtuoso 7.x 中的推理
- react-native - 禁用按钮的可访问性 - React Native
- netsuite - 如果客户余额发生更改,NetSuite 不会更新上次修改日期
- javascript - 如何 JSON.parse 数组数组
- http - 使http无状态背后的原因
- r - 如何更改图标
- java - Eclipse - 将 JAR 导入项目
- powerapps - 是否可以进行多阶段工作表格和审批?
- python - 为每次运行代码设置不同的种子