最干净的方式返回表达式中使用的变量,而不需要写两次


Cleanest way to return variable used in expression, without writing it twice

考虑这个例子,如果expression为true,则返回表达式中使用的变量,但是该变量被写入两次:

if(!is_null($arr['a-really-long']['variable'])) {
    return $arr['a-really-long']['variable'];
}

这是一个解决方案,但我需要一个额外的变量。

$return_array = $arr['a-really-long']['variable'];
if(!is_null($return_array)) {
    return $return_array;
}

最干净的方法是什么?

你可以这样做

if(!is_null($temp = $arr['a-really-long']['variable'])) {
    return $temp;
}