这适用于PHP:
class Foo{
....
}
function Foo(){return new Foo();}
这是PHP中安全/可行的做法吗? (从某种意义上说它可能会在现在或将来的版本中引起麻烦)
使用它的原因是以某种方式使代码更清晰:
class Foo{
var $bar,$hold;
function setBar($how=true){$bar=$how;return $this;}
function setHold($how=true){$hold=$how;return $this;}
}
function Foo(){return new Foo();}
//------------------
$someFoo=Foo()->setBar()->setHold(false);
// instead of $someFoo=(new Foo())->setBar()->setHold(false);
可能使代码更具可读性和/或保存一些输入。