用PHP编写这样的代码的最佳样式方法是什么?
$result = $this->funcA(param1, param2, param3, ...)->funcB(...)->funcC(...)
另外,如果参数超长,怎么办?如何以及在何处将它们分成多行?
答案 0 :(得分:2)
这就是我喜欢的:
$result = $this->funcAaAaA ( param1, param2, param3, ... )
->funcBb ( 'a', 'b' )
->funcCcc ( "word", TRUE )
很多冗余的空白,是的。但它的外观非常清晰,并且很容易一目了然,因为逻辑块变得非常清晰。
还有其他一些事情:
phpdoc
之类的TRUE
和FALSE
period operator
阻止字符串连接,而不是使用sprintf()
答案 1 :(得分:1)
从here开始,使用流畅的应用程序编程接口通常会导致许多串联函数调用。这些电话可能分成几行。执行此操作时,所有后续行都会缩进4 spaces
,并以"->"
箭头开头。
示例:
<?php
$result=$this->funcA(param1, param2, ...)
->funcB(23, 42)
->funcC();
?>
为了支持可读性,后续调用相同函数/方法的参数可以通过参数名称对齐。
示例:
<?php
$this->callSomeFunction('param1', 'second', true);
$this->callSomeFunction('parameter2', 'third', false);
$this->callSomeFunction('3', 'verrrrrrylong', true);
?>
这同样适用于参数变量,也适用于嵌套函数调用和数组
答案 2 :(得分:0)
尝试将这些指南用于PHP代码http://www.php-fig.org/psr/psr-2/