Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重构2个类似的if语句_Php_Refactoring - Fatal编程技术网

Php 重构2个类似的if语句

Php 重构2个类似的if语句,php,refactoring,Php,Refactoring,您是否会以不同的方式编写此代码?顺便说一下,我不介意,所以任何包含它的想法都是受欢迎的 if ($stopYear < $startYear) { for ($i = $startYear; $i >= $stopYear; $i--) { $yearMultiOptions[$i] = $i; } } else { for ($i = $startYear; $i <= $stopYear; $i++) { $yearMultiOptio

您是否会以不同的方式编写此代码?顺便说一下,我不介意,所以任何包含它的想法都是受欢迎的

if ($stopYear < $startYear) {
   for ($i = $startYear; $i >= $stopYear; $i--) {
     $yearMultiOptions[$i] = $i;
   }
} else {
   for ($i = $startYear; $i <= $stopYear; $i++) {
     $yearMultiOptions[$i] = $i;
   }
}
if($stopYear<$startYear){
对于($i=$startYear;$i>=$stopYear;$i--){
$yearMultiOptions[$i]=$i;
}
}否则{

对于($i=$startYear;$i您可以这样做:

$step = ($stopYear < $startYear) ? -1 : 1;
for ($i = $startYear; $i != $stopYear; $i += step) {
    $yearMultiOptions[$i] = $i;
}
$step=($stopYear<$startYear)?-1:1;
对于($i=$startYear;$i!=$stopYear;$i+=step){
$yearMultiOptions[$i]=$i;
}

您可以这样做:

$step = ($stopYear < $startYear) ? -1 : 1;
for ($i = $startYear; $i != $stopYear; $i += step) {
    $yearMultiOptions[$i] = $i;
}
$step=($stopYear<$startYear)?-1:1;
对于($i=$startYear;$i!=$stopYear;$i+=step){
$yearMultiOptions[$i]=$i;
}
$min=min($startYear,$stopYear);
$max=max($startYear,$stopYear);
对于($i=$min;$i
$min=min($startYear,$stopYear);
$max=max($startYear,$stopYear);
对于($i=$min;$i),您的答案是正确的。语法与您使用的完全相同。您的答案是正确的。语法与您使用的完全相同。