在所有函数中都有一个return语句是一种很好的编程习惯吗?

时间:2009-07-30 00:08:05

标签: php function

我有一个基本的编程问题。我想知道每个非void函数是否应该在PHP脚本中有一个“return”语句。

采用以下两个示例函数。哪一个是更好的编程方式?他们都做同样的事情(根据我的理解),但这是“更好的做法”,为什么?

function displayApple1($str){
    if($str == 'apple')
        echo $str;
}

function displayApple2($str){
    if($str == 'apple')
        echo $str;
    else
        return;
}

9 个答案:

答案 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)

不,因为更少代码=更有趣^^

不过,我相信没有返回的函数应该是子例程。