0
$this->property = 'SomeClass';

$x = new $this->property();     // works
$x = $this->property::create(); // fails (parse error)

这是PHP中的错误吗?

可以使用属性调用静态方法,而不将值分配给新变量,而是使用该变量吗?

4

2 回答 2

2

利用call_user_func

$x = call_user_func(array($this->property, 'create'));
于 2012-10-22T01:37:26.960 回答
1

它已经作为一个错误输入了几个月并且仍处于打开状态,所以我会选择是。

https://bugs.php.net/bug.php?id=61397

相似地,

https://bugs.php.net/bug.php?id=54095

于 2012-10-22T02:15:55.267 回答