d - 一个月中的第几天(从 01 到 31)
j - 一个月中的第几天,不带前导零(1 到 31)
m - 月份的数字表示(从 01 到 12)
n - 月份的数字表示,不带前导零(1 到 12)
Y - 年份的四位数表示
y - 年份的两位数表示
w - 星期几的数字表示(0 表示 Sunday[星期日],6 表示 Saturday[星期六])
D - 星期几的文本表示(用三个字母表示)
l('L' 的小写形式)- 星期几的完整的文本表示
N - 星期几的 ISO-8601 数字格式表示(1表示Monday[星期一],7表示Sunday[星期日])
F - 月份的完整的文本表示(January[一月份] 到 December[十二月份])
M - 月份的短文本表示(用三个字母表示)
t - 给定月份中包含的天数
z - 一年中的第几天(从 0 到 365)
L - 是否是闰年(如果是闰年则为 1,否则为 0)
a - 小写形式表示:am 或 pm
A - 大写形式表示:AM 或 PM
g - 12 小时制,不带前导零(1 到 12)
G - 24 小时制,不带前导零(0 到 23)
h - 12 小时制,带前导零(01 到 12)
H - 24 小时制,带前导零(00 到 23)
i - 分,带前导零(00 到 59)
s - 秒,带前导零(00 到 59)
u - 微秒(PHP 5.2.2 中新增的)
e - 时区标识符(例如:UTC、GMT、Atlantic/Azores)
常用日期:
月初:date('Y-m-01',strtotime(date('Y-m-d')));
月末:date('Y-m-t',strtotime(date('Y-m-d')));
上月初:date('Y-m-01',strtotime('-1 month'));
上月末:date('Y-m-t',strtotime('-1 month'));
计算当月天数:cal_days_in_month(CAL_GREGORIAN, date('m'), date('y') );
$season = ceil(date('n')/3); //ceil返回不小于 x 的下一个整数,x 如果有小数部分则进一位。
$season = ceil(date('n')/3);
季初:date('Y-m-01',mktime(0,0,0,($season - 1) *3 +1,1,date('Y')));
季末:date('Y-m-t',mktime(0,0,0,$season * 3,1,date('Y')));
上季初:echo date('Y-m-01',mktime(0,0,0,($season - 2) * 3 +1,1,date('Y')));
上季末:echo date('Y-m-t',mktime(0,0,0,($season - 1) * 3,1,date('Y')));
上季度的支持跨年
计算当前日期(不包含当天)距离季初的天数:ROUND( ( strtotime(date("Y-m-d"))-mktime(0,0,0,($season - 1) *3 +1,1,date('Y')) )/3600/24 );
计算每季天数:ROUND( (mktime(0,0,0,$season * 3+1,1,date('Y'))-mktime(0,0,0,($season - 1) *3 +1,1,date('Y')))/3600/24 );
年初:echo date('Y-01-01');
年末:echo date('Y-12-31');
去年初:echo date('Y-01-01',strtotime('-1 year'));
去年末:echo date('Y-12-31',strtotime('-1 year'));