簡體   English   中英

PHP 如何反轉使用 DatePeriod() 生成的月年下拉菜單

[英]PHP How to reverse a month year dropdown menu generated with DatePeriod()

我有一個下拉菜單生成如下:

$start    = new DateTime('2014-06-01');
$end      = new DateTime(date('Y-m-d'));
$interval = DateInterval::createFromDateString('1 month');
$period   = new DatePeriod($start, $interval, $end);

$select_mois = '<select name="select_mois" id="select_mois">';  
    
foreach ($period as $dt) {
    $select_mois.="<option value=" . $dt->format("m-Y") . ">" . strftime('%m.%Y', $dt->format('U')) . "</option>";
}        

$select_mois.='</select>';

它工作得很好,但我在下拉列表中首先得到較舊的日期(從 06.2014 開始)

如何反轉菜單以首先顯示最近的日期?

謝謝你的幫助

作為數組迭代和反轉;

現在也deprecated了 strftime

<?php 
$start    = new DateTime('2014-06-01');
$end      = new DateTime(date('Y-m-d'));
$interval = DateInterval::createFromDateString('1 month');
$period   = new DatePeriod($start, $interval, $end);

$select_mois = '<select name="select_mois" id="select_mois">';  

$period = array_reverse(iterator_to_array($period));
    
foreach ($period as $dt) {
    $select_mois.="<option value=" . $dt->format("m-Y") . ">" . $dt->format('m.Y') . "</option>";
}        

$select_mois.='</select>';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM