php - php生成一个下拉年份为-5年和+5年的选择框
问题描述
我想使用 PHP 动态生成一个日期范围为 -3 年和 +5 年的选择框下拉列表。
例如:
<select name="years">
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option> // Current Year
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
<option value="2024">2024</option>
</select>
像这样的东西。并且每年列表都会自动更新,就像在 2020 年一样,最小范围将变为 2017,最大范围将变为 2025。如何做到这一点?任何帮助将不胜感激。
解决方案
使用 date() 获取年份并使用 for 循环获取所需结果。
echo '<select name="years">' . PHP_EOL;
for($i = date("Y")-3; $i <=date("Y")+5; $i++){
echo '<option value="' . $i . '">' . $i . '</option>' . PHP_EOL;
}
echo '</select>';
输出:
<select name="years">
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
<option value="2024">2024</option>
</select>
推荐阅读
- c++ - 如何在 C++ 中使用数组而不是向量来读取 .CSV 文件中的数据
- python - 通过在图像中插值连接虚线
- python - 这是使用pytorch的transformer代码,但是使用gpu的时候出现错误
- reactjs - NextJS - getStaticPaths 检查新页面
- sql - 根据列条件连接不同的表
- vb.net - 如何在 vb .NET 中创建平滑的圆角形式
- amazon-web-services - 使用路由 53 在 lightsail 上实现超过 5 个域
- csv - 将多个 CSV 从一张 Google 表格插入
- python - 将 .xlsx 文件保存到 Azure Blob 存储
- bash - 使用 wget 和 awk 下载文件