2017-05-17 83 views
0
<?php 

echo '<select name="fromYear"'; 
$starting_year =date('Y', strtotime('-1 year')); 
$current_year = date('Y'); 
$ending_year = date('Y', strtotime('+10 year')); 

for($starting_year; $starting_year <= $ending_year; $starting_year++) { 
    echo '<option value="'.$starting_year.'"'; 
    if($starting_year == $current_year) { 
      echo ' selected="selected"'; 
    } 
    echo ' >'.$starting_year.'</option>'; 
}    
echo '<select>'; 
?> 

開始嗨,我有這樣的代碼如何修改this..to顯示當年和前一年2017PHP的下拉菜單 - 顯示當前年份2017年

開始的開始年份:2017年

在當2017年:我只能看到2017年在下拉

2018:2017年,2018

2019:2017年,2018年,2019

2020:2017年,2018年,2019年,2020年

等等...

+0

您是否總是希望從2017年的下拉菜單中開始列表?如果是這樣,爲什麼不將$ start_year初始化爲2017? – ayip

+0

是的..我忘了修改它 – sabahan

回答

1

使用do while啓動本年度如下:

<?php 
    $starting_year = 2017; 
    $current_year = date('Y')*1; 
    echo '<select name="years">'; 
    echo '<option>Select</option>'; 
    do { 
     echo '<option value="'.$starting_year.'">'.$starting_year.'</option>'; 
     $starting_year++; 
    } 
    while ($current_year >= $starting_year); 
    echo '</select>'; 

    ?> 

在線Demo

從PHP官方文檔:

do-while l oops與while循環非常相似,除了在每次迭代結束時檢查表達式 ,而不是在 開頭。與常規while循環的主要區別在於do-while循環的第一次迭代保證運行(事實 表達式僅在迭代結束時被檢查),而它的 可能不一定與經常同時循環...

+1

謝謝你它是工作的兄弟 – sabahan

相關問題