php - 一个函数里面用一个return 好 还是多个return 好?
巴扎黑
巴扎黑 2017-04-10 15:24:26
[PHP讨论组]
<?php


 function dmeo1($num)
 {
    if($num>0)
    {
        return true;
    }
    else
    {
        return false;
    }
 }




 function dmeo2($num)
 {    
    $status = null;

    if($num>0)
    {
       $status  = true;
    }
    else
    {
       $status  = false;
    }

    return $status;
 }
巴扎黑
巴扎黑

全部回复(21)
巴扎黑

尽早return,不要走多余的流程

php// 一般情况
function foo($num) {
    if ($num>0) {
        return true;
    }
    return false;
}


// 特殊情况:正好需要返回bool值
function bar($num) {
    return $num>0;
}
高洛峰

你的代码很好,我帮你重写了一遍:

原始代码:

javascriptfunction dmeo1($num)
{
    if($num>0)
    {
        return true;
    }
    else
    {
        return false;
    }
}

重写一遍:

javascriptfunction dmeo1($num)
{
    flag = $num > 0;

    if(flag === true)
    {
        return true;
    }
    else
    {
        return false;
    }
}

代码思路瞬间清晰了。

高洛峰

多少return没关系,要保持代码的高度简洁易懂

function dmeo($num) {
    return $num > 0;
}
PHP中文网
function dmeo3($num)
{
    return $num>0;
}

灵活的根据结构定

PHPz
function dmeo($num)
 {
    return $num>0;   
 }
巴扎黑

那个没有高亮的是“returm”?

PHP中文网

除去 guard condition 型的 return, 多个 return 是不是说明函数复杂了, 职责过多而需要重新考虑设计了.

高洛峰

尽早返回。。。

黄舟

该return的时间就return,也没有强制说几个return不好,毕竟一个return代表的是一个逻辑片段,所以其实只要逻辑清晰,代码清晰就够了!

高洛峰

应该尽早输出return,这样会提高效率,就是说本来你经确定数据已得到,对于之后的代码,执行的意义也不大

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号