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 开始)

如何反转菜单以将最近的日期放在最前面?

感谢您的帮助

作为数组进行迭代和反转;

现在 strftime deprecated

<?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>';