您的当前位置:首页>全部文章>文章详情

PHP实现今天、昨天 、本周、上周、本月、上月、本季度等方法

发表于:2021-07-01 00:40:56浏览:106次TAG: #PHP #ThinkPHP

可以使用PHP的日期和时间函数来实现快速获取今天、昨天、本周、本月等操作,这些代码中,date() 函数用于格式化日期,strtotime() 函数用于对相对时间字符串进行转换,例如 “-1 day” 表示一天前,”last Monday” 表示上周一,”next Sunday” 表示下周日。需要注意的是,这里的日期格式均采用 “Y-m-d” 的形式,可以根据具体需求进行修改。下面是一些示例代码:
1、获取当前时间

$now = date('Y-m-d H:i:s');

2、获取今天的日期

$today = date('Y-m-d');

3、获取昨天的日期

$yesterday = date('Y-m-d', strtotime('-1 day'));

4、获取本周第一天和最后一天的日期

$first_day_of_week = date('Y-m-d', strtotime('this week'));
$last_day_of_week = date('Y-m-d', strtotime('this week +6 days'));

5、获取上周第一天和最后一天的日期

$first_day_of_last_week = date('Y-m-d', strtotime('last week'));
$last_day_of_last_week = date('Y-m-d', strtotime('last week +6 days'));

6、获取本月第一天和最后一天的日期

$first_day_of_month = date('Y-m-01');
$last_day_of_month = date('Y-m-t');

7、获取上月第一天和最后一天的日期

$first_day_of_last_month = date('Y-m-01', strtotime('-1 month'));
$last_day_of_last_month = date('Y-m-t', strtotime('-1 month'));

8、获取当前季度的开始日期和结束日期

$curQuarter = ceil(date('n') / 3); // 当前季度
$firstDay = date('Y-m-d', strtotime(date('Y').'-'.($curQuarter*3-2).'-1')); // 当前季度第一天
$lastDay = date('Y-m-d', strtotime(date('Y').'-'.($curQuarter*3).'-'.date('t', strtotime(date('Y').'-'.($curQuarter*3).'-1')))); // 当前季度最后一天

9、获取上季度的开始日期和结束日期

$curQuarter = ceil(date('n') / 3); // 当前季度
$lastQuarter = $curQuarter - 1; // 上季度
if ($lastQuarter == 0) {
    $lastQuarter = 4;
}
$firstDay = date('Y-m-d', strtotime(date('Y').'-'.($lastQuarter*3-2).'-1')); // 上季度第一天
$lastDay = date('Y-m-d', strtotime(date('Y').'-'.($lastQuarter*3).'-'.date('t', strtotime(date('Y').'-'.($lastQuarter*3).'-1')))); // 上季度最后一天

注意,在以上示例中,我们使用 strtotime() 函数将日期字符串转换为时间戳,并使用 date() 函数格式化日期。还要注意,这些代码示例只适用于当前时区。