【发布时间】:2016-08-21 16:26:38
【问题描述】:
我有很多这样的遗留代码:
return isset($a) ? $a : isset($b) ? $b : isset($c) ? $c : isset($d) ? $d : isset($e) ? $e : '';
所以它只是链式三元运算符。 它可以工作,但大多数变量名不是 $a,而是 $veryLongAndDescriptiveCorporateVariableNames,它对我来说是不可读的。
有没有更好的方法来重构它?我试过这样的东西,但我不知道这是否是最好和最易读的方式:
$ar = array(
$a,
$b,
$c,
$d,
$e
);
foreach ($ar as $k => $v)
if (isset($v))
return $v;
return '';
【问题讨论】:
-
我看不出有任何理由检查 X 变量然后使用第一个现有变量。对我来说,这似乎是一个糟糕的编码脚本。
标签: php formatting refactoring