-2

我想知道是否有人可以帮助我。

我想显示一个从当前年份开始的 10 年的下拉(选择)框。

我知道显示年份是通过使用完成的

date("Y");

但我不确定如何自动显示之后的 10 年。

任何帮助将不胜感激。

干杯

4

3 回答 3

3

尝试:

    echo('<select name="year">');
    for ( $i = date("Y"); $i < date("Y")+11; $i++ )
    {
      echo('<option value="'.$i.'">'.$i.'</option>');
    }
    echo('</select>');

在此处查看结果http://codepad.viper-7.com/8S0Ogi

于 2012-07-14T08:21:23.077 回答
1

PHP 有大量的日期/时间函数。

您已经实例化了一个DateTime Object,您将能够使用简单的date_adddate_sub函数来操作任何日期或时间......


但是,对于您的情况,可以简单地迭代下拉列表中所需的年数,并简单地增加每个选项的值。

$yearSpan = 10;
$currentYear = date("Y");
$html = '<select id="foobar">';
for($i = $currentYear; $i<=$yearSpan; $i++) {
  $html .= "<option value='".$i."'>".$i."</option>";
}
$html .= '</select>';

那应该填充$html与此类似的内容-

<select id="foobar">
  <option value="2012">2012</option>
  <option value="2013">2013</option>
  <option value="2014">2014</option>
  ...
  <option value="2021">2021</option>
  <option value="2022">2022</option>
</select>
于 2012-07-14T08:23:13.597 回答
1

你可以试试这个:

<select>
    <option>Select One</option>
    <?php 
        $year = date("Y");
        $yearto = date("Y")+10;
        while ($year <= $yearto)
        {
            echo "<option value='".$year."'>".$year."</option>";
            $year++;
        }
    ?>
</select>
于 2012-07-14T08:33:03.577 回答