【发布时间】:2016-11-29 02:52:11
【问题描述】:
我们如何在 PHP 中有条件地链接方法?例如,这很好用:
$a->foo()->bar->baz->qux();
但是,根据条件,我想链接一些方法而不是其他方法。基本上,缩短以下代码:
if ($cond === true) {
$a->foo()->baz();
} else {
$a->foo()->bar();
}
理想情况下,如下所示:
$a->foo()
->bar()
($cond === true) ? ->baz() : ->qux()
->more();
此外,我们如何根据条件有条件地链接(或不链接)方法?例如:
$a->foo()
->bar()
if($cond === true) ->baz()
->more();
【问题讨论】:
-
不需要像那样模糊你的代码。除了幼稚的“看起来很酷”之外,短符号的好处是 0 。如果您想学习,请成为比这更好的程序员。
-
@Weltschmerz 在我的特殊情况下,这不是看起来很酷的问题,但如果不做这样的事情,我根本不知道如何使用这个类。因此,这更多是缺乏知识和/或提出错误问题的问题。下次我会问一个更具体的问题。