时间日期格式
- Y - 年,四位数字; 如: "1999"
- y - 年,二位数字; 如: "99"
- z - 一年中的第几天; 如: "0" 至 "365"
- F - 月份,英文全名; 如: "January"
- m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
- n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
- M - 月份,三个英文字母; 如: "Jan"
- t - 指定月份的天数; 如: "28" 至 "31"
- d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
- j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
- h - 12 小时制的小时; 如: "01" 至 "12"
- H - 24 小时制的小时; 如: "00" 至 "23"
- g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
- G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
- i - 分钟; 如: "00" 至 "59"
- s - 秒; 如: "00" 至 "59"
- S - 字尾加英文序数,二个英文字母; 如: "th","nd"
- U - 总秒数
- D - 星期几,三个英文字母; 如: "Fri"
- l - 星期几,英文全名; 如: "Friday"
- w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
- a - "am" 或是 "pm"
- A - "AM" 或是 "PM"
几个常用日期函数
$showtime = date("Y-m-d H:i:s");
echo(strtotime("now") . "<br>");
echo(strtotime("15 October 1980") . "<br>");
echo(strtotime("+5 hours") . "<br>");
echo(strtotime("+1 week") . "<br>");
echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>");
echo(strtotime("next Monday") . "<br>");
echo(strtotime("last Sunday"));
Strtotime日期问题
问题:
var_dump(date("Y-m-d", strtotime("-1 month", strtotime("2017-03-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("+1 month", strtotime("2017-08-31"))));
//输出2017-10-01
var_dump(date("Y-m-d", strtotime("next month", strtotime("2017-01-31"))));
//输出2017-03-03
var_dump(date("Y-m-d", strtotime("last month", strtotime("2017-03-31"))));
//输出2017-03-03
解决:
var_dump(date("Y-m-d", strtotime("last day of -1 month", strtotime("2017-03-31"))));
//输出2017-02-28
var_dump(date("Y-m-d", strtotime("first day of +1 month", strtotime("2017-08-31"))));
////输出2017-09-01
var_dump(date("Y-m-d", strtotime("first day of next month", strtotime("2017-01-31"))));
////输出2017-02-01
var_dump(date("Y-m-d", strtotime("last day of last month", strtotime("2017-03-31"))));
////输出2017-02-28