我试图在ajax中创建ShowMonth,但输出的是一个月数,如1、2、3、4、5、6、7、8、9、10、11、12。我希望月份是一月、二月、三月。。12月
这是我的代码:
function list_bulan($id_tahun){
$sql ="SELECT DISTINCT(MONTH(waktu)) AS bulan FROM aktiv WHERE YEAR(waktu) = $id_tahun ORDER BY MONTH(waktu) ASC";
$query = $this->db->query($sql);
$html = "<option value=''>-- Pilih bulan --</option>";
foreach ($query->result_array() as $value) {
if ($value['bulan'] == 1) {
// january
echo january;
}
$html .=
"<option value='".$value['bulan']."'>"
.$value['bulan']. // how to create if in this line? i'm try but with no success
"</option>";
}
echo $html;
}
如何在foreach内创建月份名称?有答案吗?
"<option value='".$value['bulan']."'>".date("F", mktime(null, null, null,$value['bulan']))."</option>";
如果您想要长名称,请使用
date("F", mktime(null, null, null,$your_month_number));
如果你想要短期(二月,三月,四月)
date("M", mktime(null, null, null,$your_month_number));
但你的回声一月也将被视为一个常数。应该是回声"一月";
但你并不真的需要if/语句,如果你只使用我刚才说明的日期('M'),并直接从$value['bulan']值中回声
为什么不尝试
SELECT DISTINCT MONTH(waktu) AS bulan, MONTHNAME(waktu) as bulan_name FROM aktiv WHERE YEAR(waktu) = $id_tahun ORDER BY MONTH(waktu) ASC
根据数字中的MySQL MONTHNAME()。