/** * 获取指定日期n天前后的日期列表 * @param string $date 日期 * @param int $day_num 天数 * @param string $cate 类型 * @param string $format 格式 * @return array */ function get_date_ab_list(string $date, int $day_num, string $cate = 'b', string $format = 'Y-m-d'): array { //cate b代表before,指定日期往前$day_num天,a代表after,指定日期往后$day_num天 $timezone = 'PRC'; $data = [$date]; switch ($cate) { case 'a': if ($day_num > 0) { $data = []; for ($i = 1; $i < ($day_num + 1); $i++) { $str = '+' . $i . ' day'; $datetime = new \DateTime($date, new \DateTimeZone($timezone)); $tmp = $datetime->modify($str); $data[] = $tmp->format($format); } } break; case 'b': if ($day_num > 0) { $data = []; for ($i = 1; $i < ($day_num + 1); $i++) { $str = '-' . $i . ' day'; $datetime = new \DateTime($date, new \DateTimeZone($timezone)); $tmp = $datetime->modify($str); $data[] = $tmp->format($format); } } break; } sort($data); return $data; }
标签:string,format,列表,日期,num,date,PHP,data,day From: https://www.cnblogs.com/shemmor/p/18424089