码迷,mamicode.com
首页 > Web开发 > 详细

PHP 周转换为日期(最后一天) date("o-W")转Y-m-d日期——贴上代码

时间:2015-01-25 16:30:46      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

//o-W week 转换为普通日期 周的最后一天
    public function weekToDate($oW){
        $oW = explode("-", $oW);    //拆分o-W周 为年和周数
        $year = $oW[0]; //年
        $week = $oW[1]; //周数
        $weekYearBegin = date("w",strtotime($year."-01-01"));   //年初1月1是星期几,0-6,0是周日,1-6是周一到周六
        $WYearBegin = date("W",strtotime($year."-01-01"));  //年初1月1是第几周,可能是该年第一周:01,也可能是上年最后一周:52
        if($WYearBegin == "01"){    //该年的第一周
            $days = (7-$weekYearBegin)%7 + (int)($week-$WYearBegin)*7;  //需要计算的周的最后一天(星期天),距离年初1月1有多少天
        }else{  //上年的最后一周
            $days = (7-$weekYearBegin)%7 + (int)($week)*7;  ////需要计算的周的最后一天(星期天),距离年初1月1有多少天
        }
        $lastDayOfW = date("Y-m-d",strtotime($year."-01-01 +".$days." days"));  //因为是求最后一天(星期天),所以一定落在该年($year),或者下一年,而不会落在上一年 用$year +n days
        return $lastDayOfW;
    }

以上为整个代码实现,返回为所求date("o-W")周的最后一天(周日)的日期 date("Y-m-d")

PHP 周转换为日期(最后一天) date("o-W")转Y-m-d日期——贴上代码

标签:

原文地址:http://www.cnblogs.com/iwish/p/4248312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!