php获取指定月份的开始结束时间戳
发布时间:2020-12-07, 08:14:49 分类:PHP | 编辑 off 网址 | 辅助
正文 699字数 702,892阅读
function mFristAndLast($y = "", $m = ""){
if ($y == "") $y = date("Y");
if ($m == "") $m = date("m");
$m = sprintf("%02d", intval($m));
$y = str_pad(intval($y), 4, "0", STR_PAD_RIGHT);
$m>12 || $m<1 ? $m=1 : $m=$m;
$firstday = strtotime($y . $m . "01000000");
$firstdaystr = date("Y-m-01", $firstday);
$lastday = strtotime(date('Y-m-d 23:59:59', strtotime("$firstdaystr +1 month -1 day")));
return array(
"firstday" => $firstday,
"lastday" => $lastday
);
}
Run code
Cut to clipboard
(支付宝)给作者钱财以资鼓励 (微信)→
有过 2 条评论 »
$date = '2019-02-01'; echo date("t",strtotime($date));
/** * 生成日期范围 * * @param string $startDate 开始日期 2020-09-25 * @param string $endDate 结束日期 2020-10-08 * @param bool $range_month 是否生成月范围,默认生成日范围 * * @return array */ function rangeDate($startDate = '', $endDate = '', $range_month = false) { $array = []; $start = strtotime($startDate); $end = strtotime($endDate); // 默认最多生成366天,正常365天,如闰年的2月多一天 $limit = 366; // 默认最多生成12个月 $monthLimimt = 12; $i = 1; if (false === $range_month) { $array[] = date('Y-m-d', $start); while ($limit--) { $next = strtotime("+$i day", $start); $i++; if ($next < $end) { $array[] = date('Y-m-d', $next); } else { break; } } $array[] = date('Y-m-d', $end); } else { $array[] = date('Y-m', $start); while ($monthLimimt--) { $next = strtotime("+$i month", $start); $i++; if ($next < $end) { $array[] = date('Y-m', $next); } else { break; } } $array[] = date('Y-m', $end); } // 去重一次 return array_unique($array); }