php指定日期获取上周的周几

2022-08-08 09:11 php实例 107 梁俊威

在处理日程日期等数据时,用的比较多的就是获取这周几,下周几,上周几,其实原理很简单。

在网上看了一下,很少有这样的文章,这里用给一个指定日期,获取上周几来作为演示。废话不多说,直接上码。

/*
 * 给一个指定日期,获取上周几
 * @param string $date 指定日期,格式:2022-08-08 || 2022/08/08
 * @param string $lastWeekWhich 获取上周几,Monday/Tuesday/Wednesday/Thursday/Friday/Saturday/Sunday
 * @return string $lastWeekTimestamp 时间戳
 */
protected function dateToLastWeekWhich($date, $lastWeekWhich='Monday'){
    // 获取当前日期
    $date = strtotime($date);
    // 获取今天是周几
    $dateWeekWhich = date('w', $date) ? date('w', $date) : 7;
    
    // 这周过去了多少天
    $weekArray = [
        'Monday'=>1,
        'Tuesday'=>2,
        'Wednesday'=>3,
        'Thursday'=>4,
        'Friday'=>5,
        'Saturday'=>6,
        'Sunday'=>7,
    ];
    // 距离配置相差的天数
    $weekDifference = 7 - $weekArray[$lastWeekWhich] + $dateWeekWhich;
    
    // 可修改的时间,时间戳/秒,获取下周就+
    $lastWeekTimestamp = $date-$weekDifference*24*60*60;

    return $lastWeekTimestamp ;
}


若无特殊说明,本站点所有内容均为原创,转载请说明出处!

原文链接:https://www.ljwei.com.cn/read/379.html

QQ客服

QQ客服

微信客服

微信客服

微信客服二维码
意见反馈

意见反馈

一键置顶