如何处理复杂性最低且只返回一次的错误

时间:2018-01-24 14:18:10

标签: php function return

我想避免在我的函数中使用multiples返回,但是如果没有在这样的情况下添加很多else我无法看到如何中断它们:

public function foo($number)
{
    if ($number > 8)
    {
        return ' > 8';
    }

    if (exist($number))
    {
        return $number . ' exist';
    }

    return $this->bar($number);
}

我的用例是显示某些无效情况的错误消息,并且不执行函数中剩余的内容。

1 个答案:

答案 0 :(得分:2)

你可以这样做:

public function foo($number)
{
    if ($number > 8) {
        $return_value = ' > 8';
    } elseif (exist($number)) {
        $return_value = $number . ' exist';
    }

    return $return_value ?? $this->bar($number);
}

但AFAIK,多次返回都没问题,因为功能足够可读。我主要担心的是一个小功能,只有几行,所以我不必滚动,我可以在几秒钟内理解它。因此,即使有三个return个案例,它仍然可读。