这真是烦人,你不能做这些事情(和它没有任何意义,你不能)对象实例化之后我能想到的事情是有一个静态函数来返回一个新对象使用对象操作符在PHP
public static function get($a) {
return new self($a);
}
// ...
A::get('foo')->bar();
但这只是丑陋的。 为什么我需要这个的原因是因为在对象定义的上下文我大多通过新的对象作为参数或作为阵列的一部分:
new B(array(
new A('foo')->bar()
new A('smt')->bar()->more()
));
bar()
和more()
当然返回的对象的引用。
我同意并同情,但你的问题是什么?我认为这不能被规避... – 2010-12-18 17:24:13
我希望有一个模式如何做到这一点,而不会使用基本上什么都不做的静态函数混淆您的代码。 – slosd 2010-12-18 17:29:47
还没有,也许在PHP 5.4 :) – StasM 2010-12-19 04:31:05