函数返回/回声的最简单方法(速记如果)



我在我的课程中具有此功能。默认值它应该回声值,但也通过使用可选参数返回值。

public function test($return = false) {
    $value = 'demo123';
    if ($return) {
        return $value; // optional
    } else {
        echo $value; // default
    }
}

有什么方法可以使此"如果"短,一行(因为我对此有很多功能,所以我可以节省很多行)。

我尝试了三元操作员,但是我不知道我是否可以在这种情况下使用它们。

最好的,正确的,美容的方式是返回/回声函数?

线并不昂贵,因此减少代码行不是一个特别有用的目标,尤其是在降低可读性的情况下。

但是,您可以删除其他子句,因为返回将返回!

public function test($return = false)
{
    $value = 'demo123';
    if ($return) {
        return $value; // optional
    }
    echo $value; // default
}

如果您是由于代码复制而这样做的,那么我将通过另一个可以评估$ return的功能传递所有结果。

private function returnOrEcho($value, $return){
  if($return) return $value;
  echo $value;
}
public function test($return = false){
  $value = 'demo123';
  return $this->returnOrEcho($value, $return);
}
public function test2($return = false){
  $value = 'demo456';
  return $this->returnOrEcho($value, $return);
}

这是我在您的情况下会做的。在每个功能的末尾,它将仅是1行代码。

public function test($return = false)
{
    $value = 'demo123';
    return returnMe($return, $value);
}
private function returnMe($return = false, $value){
    if ($return) {
        return $value;
    }else{
        echo $value;
        return false;
    }
}

相关内容

最新更新