根据当月的那一天,我一直在编写代码以显示一个月。
例如:
如果我们在实际月份的第1天和第10天之间,我想显示实际月份。 如果我们在实际月份的第10天之后,我想显示下个月。
所以,如果我们是 3月1日,我希望'3月'显示。
但如果我们是 3月22日,我想要'4月'来展示。
我希望用西班牙语显示月份。我已经通过以下代码完成了这项工作。
代码:
function date_es($format = 'F', $time = null){
if(empty($time)) $time = time();
$date = date($format, $time);
$mois_en = array("January","February","March","April","May","June","July","August","September","October","November","December");
$mois_es = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
$date = str_replace($mois_en, $mois_es, $date);
return $date;
}
但是,我不知道如何将条件语句包含在此代码中?
欢呼任何帮助。
答案 0 :(得分:1)
如果您需要获取每月的某一天 - 请使用j
格式化选项。
在我看来,你的功能应该如下:
function date_es($format = 'F', $time = null){
if(empty($time)) $time = time();
// get day num
$day_num = date('j', $time);
// get month num
$month_num = date('n', $time);
if ($day_num > 10) {
// add 1 if day is more then 10
$month_num += 1;
// if your month is December,
// then `$month_num` is 13
// but you don't need this)
$month_num %= 12;
}
$mois_es = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
// return month name
//I added `- 1` because keys in `$mois_es` start with zero
return $mois_es[$month_num == 0? 11 : $month_num - 1];
}