日期和时间是我们在开发过程中经常用到的,在php中可以通过各种方法获取到我们需要的日期和时间,下面是整理的一些常用方法
date() //函数d 相关参数 <?php echo $showtime=date("Y-m-d H:i:s");?> // 显示的格式: 年-月-日 时:分:秒 // 相关时间参数: // 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"
<?php //本周一 echo date('Y-m-d', (time() - ((date('w') == 0 ? 7 : date('w')) - 1) * 24 * 3600)); //w为星期几的数字形式,这里0为周日 //本周日 echo date('Y-m-d', (time() + (7 - (date('w') == 0 ? 7 : date('w'))) * 24 * 3600)); //同样使用w,以现在与周日相关天数算 //上周一 echo date('Y-m-d', strtotime('-1 monday', time())); //无论今天几号,-1 monday为上一个有效周未 //上周日 echo date('Y-m-d', strtotime('-1 sunday', time())); //上一个有效周日,同样适用于其它星期 //本月一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-01 00:00:00')); //直接以strtotime生成 //本月最后一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-' . date('t', time()) . ' 00:00:00')); //t为当月天数,28至31天 //上月一日 echo date('Y-m-d', strtotime('-1 month', strtotime(date('Y-m', time()) . '-01 00:00:00'))); //本月一日直接strtotime上减一个月 //上月最后一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-01 00:00:00') - 86400); //本月一日减一天即是上月最后一日 //获取特定日期一月后的日期 echo date("Y-m-d",strtotime("+1 month",strtotime("2012-02-04"))); //结果为:2011-03-04 //获取特定日期一周后的日期 echo date("Y-m-d",strtotime("+1 week",strtotime("2011-02-04"))); //结果为:2011-02-11 //获取特定日期一天后的日期 echo date("Y-m-d",strtotime("+1 day",strtotime("2011-02-04"))); //结果为:2011-02-05 ?>