php:来自“ClassName”的新对象和参数数组

Posted

技术标签:

【中文标题】php:来自“ClassName”的新对象和参数数组【英文标题】:php: new object from "ClassName" and array of args 【发布时间】:2011-09-05 18:35:59 【问题描述】:

我有一个包含类名和一个参数数组的字符串。 $classname($args) 有效,但在这种情况下,我在构造函数中只有 1 个参数 任何人都知道,如何使用扩展的 args 来做到这一点?

【问题讨论】:

记得接受答案,如果它可以帮助您解决问题。这也涉及您的其他问题。 【参考方案1】:
$reflection = new ReflectionClass($classname);
$object = $reflection->newInstanceArgs($args);

http://php.net/reflection

【讨论】:

在反思之前,我遇到了同样的问题。知道我做了什么吗?生成一个字符串并对其进行评估。恶心。 是的,我也没有看到没有反思的另一种解决方案。然而,当使用接口、工厂模式(或类似的)时,通常不需要这样的东西。【参考方案2】:

哈哈我刚问了这个问题:PHP passing a class as a reference?

你不能扩展$args。您可以尝试传递$args[0], $args[1] 等。

【讨论】:

以上是关于php:来自“ClassName”的新对象和参数数组的主要内容,如果未能解决你的问题,请参考以下文章

PHP 系统函数

javascript 来自JSON的新类对象

48)PHP,工厂模式

NSFetchedResultsController 未显示来自子对象的具有 nil 部分名称的新对象

通过其键和值(js)来自另一个对象的新对象[重复]

数据库关系数据库(Relational Databases)