我有一个基本的编程问题。我想知道每个非void函数是否应该在PHP脚本中有一个“return”语句。
采用以下两个示例函数。哪一个是更好的编程方式?他们都做同样的事情(根据我的理解),但这是“更好的做法”,为什么?
function displayApple1($str){
if($str == 'apple')
echo $str;
}
function displayApple2($str){
if($str == 'apple')
echo $str;
else
return;
}
答案 0 :(得分:17)
过度使用return
是一件坏事。您的执行路径应该简单明了;过度使用return
关键字可能意味着(不正确)的复杂性。
答案 1 :(得分:5)
你的第二个例子伤害了我的头脑。它可能应该是:
funciton displayApple2($str){
if($str == 'apple')
echo $str;
return;
}
就个人而言,如果我没有特别归还某些内容,我不会使用return语句。
答案 2 :(得分:5)
你不应该在所有功能中都有一个return语句。
当它什么也不做时,它只是one more line of code。
答案 3 :(得分:3)
我倾向于“更少的代码更好”,理由是结果更容易阅读并且提供更少的隐藏错误的地方。
答案 4 :(得分:3)
只在需要时使用返回,否则让语言做到这一点。
答案 5 :(得分:2)
如果您没有从 C 函数返回某些内容,则返回值将成为您调用该函数时RAM中先前的随机值。这是不合需要的,因为没有return
的函数似乎返回随机值。因此,在 C 中,您应该在每个非空 C 函数中始终使用return
语句,这样您就不会返回随机垃圾。
PHP 没有此问题 - 如果您不使用return
语句,则函数保证返回null
,因此最好不要将它们留出来并节省一些空间。
答案 6 :(得分:0)
好吧,我不知道在“功能”上返回一个值,但它会对你有什么用处?当您认为这对您的情况有益时使用它。制作干净且有用的代码也是一种很好的做法:)
答案 7 :(得分:0)
[正切]
我有一位老师给我5%的考试,因为他没有在C语言的空白函数结尾处放置一个返回语句。
可以说我没有再从她那里上课了 [/切线]
答案 8 :(得分:0)
不,因为更少代码=更有趣^^
不过,我相信没有返回的函数应该是子例程。