使用 for 循环在选定的 PHP 中添加选项


Using for loops to add Options within a select PHP

我想一次性添加所有月份,而无需手动输入它们。由于月份有一个数值(1 - 12),我认为这样做很容易:

$monthsel = $form->add(new jqmSelect('month', 'month', ''), true);
for ($i=1; $i<=12; $i++){
    $month = strtotime("F", $i);
    $monthsel->add(new jqmOption("$month", $month, false));
    $monthsel->attribute('data-native-menu','false');
}

但是,月份显示在选择中,如下所示:

21601
21602
21603
21604
21605
21606
21607
21608
21609
21610
21611
21612

我相信这是一个月的时间戳?

好吧,不管它是什么,我希望月份的全名出现在选择中。

它不起作用,因为strtotime需要时间戳。 $i不是时间戳,因此strtotime会将其视为 1 秒。因此,您最好的选择是执行以下操作:

strtotime("F", date('Y-' . $i . '-m'));

这只是实现这一目标的众多方法之一。你也可以有一个这样的数组:

$months_array = array('January', 'Feburary', ...);

做:

$month = $months_array[$i - 1];