时间参数详解
a - "am" 或是 "pm"
A - "AM" 或是 "PM"
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
D - 星期几,三个英文字母; 如: "Fri"
F - 月份,英文全名; 如: "January"
h - 12 小时制的小时; 如: "01" 至 "12"
H - 24 小时制的小时; 如: "00" 至 "23"
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
i - 分钟; 如: "00" 至 "59"
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
l - 星期几,英文全名; 如: "Friday"
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
M - 月份,三个英文字母; 如: "Jan"
s - 秒; 如: "00" 至 "59"
S - 字尾加英文序数,二个英文字母; 如: "th","nd"
t - 指定月份的天数; 如: "28" 至 "31"
U - 总秒数
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
Y - 年,四位数字; 如: "1999"
y - 年,二位数字; 如: "99"
z - 一年中的第几天; 如: "0" 至 "365"
实例代码
1 <?php 2 $timetype = isset($request[‘timetype‘]) ? (int)$request[‘timetype‘] : 3;//选择时间 1:今天 2:本周 3:本月 4:全年 3 switch ($timetype) { 4 case 1://【今天】的开始和结束时间戳 5 $begintime = mktime(0, 0, 0, date(‘m‘), date(‘d‘), date(‘Y‘)); 6 $endtime = mktime(23, 59, 59, date(‘m‘), date(‘d‘), date(‘Y‘)); 7 //方法2 8 //$begintime = strtotime(date(‘Y-m-d 00:00:00‘)); 9 //$endtime = strtotime(date(‘Y-m-d 23:59:59‘)); 10 break; 11 case 2://【本周】的开始和结束时间戳 12 $begintime = mktime(0, 0, 0, date("m"), date("d") - date("w") + 1, date("Y")); 13 $endtime = mktime(23, 59, 59, date("m"), date("d") - date("w") + 7, date("Y")); 14 break; 15 case 3://【本月】的开始和结束时间戳 16 $begintime = mktime(0, 0, 0, date(‘m‘), 1, date(‘Y‘)); 17 $endtime = mktime(23, 59, 59, date(‘m‘), date(‘t‘), date(‘Y‘)); 18 break; 19 case 4://【全年】的开始和结束时间戳 20 $begintime = mktime(0, 0, 0, 1, 1, date("Y")); 21 $endtime = mktime(23, 59, 59, 12, 31, date("Y"));
break; 22 } 23 ?>
指定某个月的开始和结束时间戳
1 <?php 2 $param[‘startdate‘] = strtotime($date); // $date如:2018-5 3 $firstdaystr = date("Y-m-01", $param[‘startdate‘]); 4 $param[‘enddate‘] = strtotime(date(‘Y-m-d 23:59:59‘, strtotime("$firstdaystr +1 month -1 day"))); 5 ?>
大月小月问题
1 <?php 2 $date = date(‘Y-m-d‘,strtotime(‘last day of -1 month‘,strtotime(‘2018-07-31‘)));//(加上last day of)结果为 2018-06-30 否则 2018-07-01 3 $date = date(‘Y-m-d‘,strtotime(‘first day of -1 month‘,strtotime(‘2018-07-31‘)));//(加上first day of)结果为 2018-06-01 否则 2018-07-01 4 $date = date(‘Y-m-d‘,strtotime(‘last day of +1 month‘,strtotime(‘2018-08-31‘)));//(加上last day of)结果为 2018-09-30 否则 2018-10-01 5 6 ?>
指定日期语言
1 1 <?php 2 2 setlocale(LC_TIME, ‘it‘);//切换到意大利 3 echo utf8_encode( strftime("%a %d %b %Y", $dateline) );//传入时间戳 4 setlocale(LC_TIME, NULL);重置到当前系统默认地区 5 3 ?>
原文:https://www.cnblogs.com/guliang/p/11730721.html