- 判断是否在同一周
date_default_timezone_set(‘PRC‘); //判断是否在同一周,原理:求出其中一个时间戳所在周的周一凌晨时间戳和周日24.00时间戳,如果另一个时间戳在这个范围内,则说明在同一周,否则不在同一周 function getSameWeek($pretime,$aftertime){ $monday = strtotime(‘last Monday‘, $pretime); //离当前时间戳$pretime最近的上一个周一的时间戳,如果当前时间$pretime是周一,$monday存储的仍然是上周一 //判断如果当前给定时间戳就是周一,那么就返回当前时间戳给$monday if(date(‘w‘, $pretime)){ $monday = $pretime; } $sunday = $monday+24*3600*7; //周日时间戳 if($aftertime >= $sunday){ return false; } if( $aftertime <= $monday ){ return false; } return true; } $testWeek_start=strtotime(‘2019-8-19‘); $testWeek_end=strtotime(‘2019-8-18‘); echo getSameWeek($testWeek_start, $testWeek_end) ? ‘在同一周‘ : ‘不在同一周‘, ‘<br>‘;
- 判断是否在同一月(可以使用上面的思路来实现,但这里使用另一个思路)
date_default_timezone_set(‘PRC‘); function isSameMonth($time1, $time2) { $m1 = date(‘Ym‘, $time1); $m2 = date(‘Ym‘, $time2); // 必须判断年份,不然2019-8和2020-8会被认为同一月 if($m1 == $m2){ return true; } return false; } $t1 = strtotime(‘2018-8-13‘); $t2 = strtotime(‘2019-8-18‘); echo isSameMonth($t1, $t2) ? ‘在同一月‘ : ‘不在同一月‘;
- 判断年使用判断月的思路比较简单,只需把date里的‘’m‘’去掉, 代码省略
原文地址:https://www.cnblogs.com/bneglect/p/12036834.html
时间: 2024-10-06 09:04:12