如题,请问如何做?

解决方案 »

  1.   

      我是这么写的,年初数加上周的天数,可以得到这周某一天的日期,至于这周星期一到星期天是几号到几号,我还没想到。
      不知道楼主的意思我理解的对不对。我是新手。
    <?php
    date_default_timezone_set('Asia/Shanghai');

    $date1 = strtotime('2010-01-01');
    $date2 = 1*7*24*60*60;   //第一个“1”就是你要填写第几周
    $date3 = $date1+$date2;
    echo date('Y-m-d',$date3);
      

  2.   

    从网上找来的,稍微做了一下修改
    function GetWeekDate ($week, $year) {
    $timestamp = mktime(0, 0, 0, 1, 1, $year);
    $dayofweek = date("w", $timestamp);
    if ($week != 1) {
    $distance = ($week - 1) * 7 - $dayofweek + 1;
    $passed_seconds = $distance * 86400;
    $timestamp += $passed_seconds;  
    $firt_date_of_week = date("Ymd", $timestamp);
    }
    if ($week == 1) {
    $distance = 7 - $dayofweek;
    } else {
    $distance = 6;
    $timestamp += $distance * 86400;
    $last_date_of_week = date("Ymd", $timestamp);
    }
    echo $year . '年的第' . $week . '星期的星期一是:' . $firt_date_of_week . ',星期天是' . $last_date_of_week;
    }
    GetWeekDate (3, 2010);
    来源: http://blog.csdn.net/hitblue/archive/2009/10/24/4724136.aspx
      

  3.   

    一开始那半个星期你算第几个? 如果算第1个的话:echo date('Y-m-d',strtotime('+1 monday, 2010-01-01'));  //  这样可以得到第二周的星期一,其它日期基于周一算就行注意不要直接用+1 friday算第二周的星期5,因为你得到的是第一周的周5
      

  4.   

    function weeknumToweekday($weeknum)
    {
    $year = date("Y");
    $weeksofyear = date("W",strtotime("$year-12-31"));
    if($weeknum < 1 || $weeknum > $weeksofyear)
    {
    return false;
    }
    $nowweek = date("W");
    $offweek = $weeknum-$nowweek;
    $nowdayofweek = date("N");
    $weeddateshow = "<table><th colspan=7>The $weeknum"."th week of year $year"."</th><tr><td>Mo</td><td>Tu</td><td>We</td><td>Th</td><td>Fr</td><td>Sa</td><td>Su</td></tr><tr>";//你可以自己修改显示样式
    for($i=1;$i<=7;$i++)
    {

    $nowdayofweek--; 
    $offday = -$nowdayofweek;
    if($offday==1 || $offday==-1 || $offday==0)
    {
    $addday = "day";
    }else
    {
    $addday = "days";
    }
    if($offday==1 || $offday==-1 || $offday==0)
    {
    $addweek =  "week";
    }else
    {
    $addweek =  "weeks";
    }

    $weeddateshow .= "<td>".date("Y-m-d",strtotime("$offweek $addweek $offday $addday"))."</td>";
    }
    $weeddateshow .= "</tr></table>";
    return $weeddateshow;
    }
    echo weeknumToweekday(49);//示例——第49周的日期
      

  5.   

    不好意思,写的太快,这段代码有误
    if($offday==1 || $offday==-1 || $offday==0) 

    $addweek =  "week"; 
    }else 

    $addweek =  "weeks"; 

    应该改为:
    if($offweek==1 || $offweek==-1 || $offweek==0) 

    $addweek =  "week"; 
    }else 

    $addweek =  "weeks"; 

      

  6.   

    date_default_timezone_set('PRC');$t = strtotime('+1 monday 2010-01-01');  //获得第一个完整周开始的日期//echo date('Y-m-d W w ', $t); // 2010-01-04 01 1 (第一周 星期一)//那么第 n 周开始日期为
    $n = 20;
    $b = strtotime("+$n week -1 week", $t);
    //echo date('Y-m-d W w ', $b); // 2010-05-17 20 1//第 n 周各天的日期值为
    echo "第 $n 周<br />";
    for($i=0; $i<7; $i++) {
      echo date("Y-m-d 星期 w", strtotime("$i day", $b)) . '<br />';
    }