0

PHP for ループを実現するためのより専門的または簡単な方法はありますか? (現在の例では: 1126)

<?php
$max = 11126;
$step = 2000;

for ($i = 0; $i < $max; null) {
    if ($max - $i > $step) {
        $i += $step;
    } else {
        $i += $max - $i;
    }

    echo($i . ", ");
}

?>

出力:

2000, 4000, 6000, 8000, 10000, 11126, 

...これは正しいですが、コードが多すぎるように見えます。

4

2 に答える 2

0

私の解決策がより「専門的」であるかどうかはわかりませんが、少なくとも別の解決策が得られます;)

$showSteps = function($max, $step) {
    $arr = array();
    for ($i = $step; $i <= $max; $i = $i + $step) {
        $arr[] = $i;
    }

    if (($max % $step) > 0) {
        $arr[] = intval($max/$step) * $step + $max % $step;
    }

    print implode(', ', $arr);    
};

$showSteps(11126, 2000);
于 2013-08-30T21:20:09.610 に答える