<?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;
}
ringa_lee2017-04-10 15:26:26
使用哪种方式能带使代码更加清晰就使用哪种,不过通常情况下使用多个return是一个更佳的选择。
具体可以参考《重构-改善代码既有设计》9.5节的介绍。
巴扎黑2017-04-10 15:26:26
如果程序中有很多防御性设计,在出错之后程序就要退出,那么就要在每次出错的时候直接return,否则就这样了:
如果程序就是一个算法,有确定的返回值类型,那么我认为还是一个return好:
function getValue($x) {
$y = 0;
if ($x>0) {
$y = $x*$x;
} else if ($x == 0) {
$y = -1;
} else {
$y = 1/$x;
}
return $y;
}
黄舟2017-04-10 15:26:26
http://stackoverflow.com/questions/36707/should-a-function-have-only-one-return-statement
ringa_lee2017-04-10 15:26:26
function dmeo2($num)
{
$status = false;
if($num>0)
{
$status = true;
}
return $status;
}
我比较习惯这种写法