我在我的课上有这个功能。默认情况下,它应该回显值,但也可以通过使用可选参数将值返回给变量。有没有什么办法让这个“如果”更短,在一行(因为我有很多的功能,所以我可以保存很多行)。最简单的方法返回/回声功能(速记IF)
我尝试过三元运算符,但是我不知道我是否可以用这个方法来实现它。
什么是最好的,正确的,美丽的方式来做这个返回/回声功能?
我在我的课上有这个功能。默认情况下,它应该回显值,但也可以通过使用可选参数将值返回给变量。有没有什么办法让这个“如果”更短,在一行(因为我有很多的功能,所以我可以保存很多行)。最简单的方法返回/回声功能(速记IF)
我尝试过三元运算符,但是我不知道我是否可以用这个方法来实现它。
什么是最好的,正确的,美丽的方式来做这个返回/回声功能?
线条并不昂贵,因此减少代码行并不是特别有用的目标,特别是如果它降低了可读性。
但是,您可以删除else子句,因为返回将返回!
public function test($return = false)
{
$value = 'demo123';
if ($return) {
return $value; // optional
}
echo $value; // default
}
我忘了退出函数....谢谢! – norr
这是我会做你的情况。在每个函数的末尾只有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;
}
}
如果你这样做,因为代码复制的,那么我会通过将评估$返回另一个函数传递的所有结果。
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);
}
线不贵,程序员时间 – Steve
'$返回返回$值:$回声value' – Thamilan
@Steve这就是为什么你在句末省略了点? ;) – Rizier123