假设我们想要根据条件从函数返回一个值。我们可以通过两种方式实现:
function foo($bar) {
if ($bar == 'value1') {
return 'baz';
}
else if ($bar == 'value2') {
return 'qux';
}
}
function foo($bar) {
$result = '';
if ($bar == 'value1') {
$result = 'baz';
}
else if ($bar == 'value2') {
$result = 'qux';
}
return $result;
}
我个人更喜欢第二种方法 哪种方式更好(特别考虑更长的if / else结构)? 感谢。
答案 0 :(得分:2)
我个人喜欢第二种方式,因为它更具可读性,你不会错过任何地方的返回语句,特别是如果你有复杂的if / else结构。
答案 1 :(得分:1)
我发现这更具可读性/清洁/可维护性,但这可能只是个人偏好的问题:
function foo($bar)
{
if ($bar == 'value1')
return 'baz';
if ($bar == 'value2')
return 'qux';
}
如果$ bar / return对象总是“一对一”,你也可以这样做:
function foo($bar)
{
$ar_matches = array(
'value1' => 'baz',
'value2' => 'qux'
);
if (isset($ar_matches[$bar])
return $ar_matches[$bar];
}