有没有办法使用对象属性的值实例化一个新的类实例?$arg = 'hello';$class = $foo->bar;$instance = new $class($arg);这工作正常,但我想跳过第二行,只做类似的事情:$instance = new {$foo->bar}($arg);
1 回答
慕雪6442864
TA贡献1812条经验 获得超5个赞
在 PHP 5.0.4+ 中,这可以正常工作:
$instance = new $foo->bar($arg);
完整示例:
<?php
$foo = new foo();
$arg = 'hello';
$class = $foo->bar;
$instance = new $class($arg);
$instance = new $foo->bar($arg); // your requested shorthand
class foo {
public $bar = 'bar';
}
class bar {
public function __construct($arg) {
echo $arg;
}
}
- 1 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消