-2
<select name="month" id="month" >
    <option value="">Select</option>
    <?php

    for ($i = 0; $i < 12;   $i++) {
    $date_str = date('M', strtotime("+ $i months"));
    echo "<option value=$i>".$date_str ."</option>";

    } ?>
    </select>

0から始まるこのコード値を実行しているとき、1から始めたい

例: 1 月の値は "1" にする必要があります。どのように可能ですか?

4

3 に答える 3

3

各月の数字に 1 を加算して出力します。

for( $i = 0; $i < 12; $i++ )
{
    $date_str = date( 'M', strtotime('+ $i months') );
    echo sprintf( '<option value="%d">%s</option>', $i + 1, $date_str );
}

ところで: HTML 属性は、スペースによる失敗を防ぐために引用符で囲む必要があります。

于 2013-01-07T12:05:45.560 に答える
2
<select name="month" id="month" >
<option value="">Select</option>
<?php

for ($i = 0; $i < 12; ) {
$date_str = date('M', strtotime("+ $i++ months"));
echo "<option value=$i>".$date_str ."</option>";

} ?>
</select>

++ を strtotime 関数の後、表示の前に移動すると機能します。これが機能するには、 for の最後の部分を空白のままにしておく必要があります

于 2013-01-07T12:10:28.090 に答える
0

for ($i = 1; $i <= 12; $i++)

于 2013-01-07T12:07:06.003 に答える