获取某段时间内间隔月份
/**
* 获取两个时间戳之间的间隔月份
*
* @param string $start 开始时间戳
* @param string $end 结束时间戳
* @return array
*/
public function monthList($start, $end) {
$start = date('Y-m', $start); //起始月份
$end = date('Y-m', $end); //结束月份
$start = strtotime($start . '-01'); //1号
$end = strtotime($end . '-01'); //1号
$i = 0;
$d = array();
while ($start <= $end) {
$d[$i] = trim(date('Y-m', $start), ' ');
$start += strtotime('+1 month', $start) - $start; //注意strtotime在此处及②处用法的不同
$i++;
}
return $d;
}
获取指定日期所在星期的第一天及最后一天
/**
* @param string $day 日期
*
* @return array
*/
public function getdays($day) {
$lastday=date('Y-m-d',strtotime("$day Sunday"));
$firstday=date('Y-m-d',strtotime("$lastday -6 days")); //②注意$lastday是时间不是时间戳
return array($firstday,$lastday);
}
获取指定日期所在月的第一天及最后一天
/**
* 获取指定日期所在月的第一天及最后一天
*
* @param string $day 日期
* @return array
*/
public function getdays($day) {
$firstday = date('Y-m-01',strtotime($day));
$lastday = date('Y-m-d',strtotime("$firstday +1 month -1 day"));
return array($firstday,$lastday);
}
php时间函数相关
date(format,timestamp) //格式化一个本地时间/日期 注意第二个参数是时间戳
strtotime(time,now) //将任何英文文本的日期时间描述解析为Unix时间戳(常用于加减月份及天数等)
time() //返回当前时间的 Unix 时间戳