得出当前是第n周星期m,然后47与当前周数相差多少周,当前日期+相差周数*7推出47周的星期m是几月几日,其他6天也就可以得出.
自己想出来的笨办法,不知道还有什么其他好的办法

解决方案 »

  1.   

    <?php
    //显示本年第45周
    $showWeek = 45;//本周是本年的第几周
    $week   = Date('W');//显示的周与本周的周差
    $weekOff = $showWeek - $week . ' weeks';//今天是本周的星期几
    $today  = Date('w');//从星期一到星期日
    for($i=1; $i<8; $i++)
    {
    //日差
    $dayOff = $i-$today .' days';
    //总周差,日差
    $dayOff = $weekOff . ' '. $dayOff;
    echo Date('Y-m-d',strtotime($dayOff))." ";
    }
    ?>
      

  2.   

    $n = date('W');
    $d = ((7 - date('w', strtotime('2006-1-1'))) % 7) + 1;
    echo date('第一周从 Y-m-d 开始', strtotime("2006-1-1 +$d day"));
    echo date("第 $n 周从 Y-m-d 开始", strtotime("2006-1-1 +$d day +$n week -1 week"));
      

  3.   

    <?php
    //算第$w周星期一为几月几日.然后就不用说了吧
    function w($w,$y){   //$w为第几周;//$y哪一年
    $days = date('w',mktime(0,0,0,1,1,$y));
    if($days==0){
    $a = 24*60*60;
    }else{
    $a = (8-$days)*24*60*60;
    }
    $sec = $w*7*24*60*60+mktime(0,0,0,1,1,$y)+$a-7*24*60*60;
    echo date('Y-m-d',$sec)."<br>";
    }
    w(2,2007);
    ?>
      

  4.   

    回复人:xuzuning(唠叨) ( 五星(高级)) 信誉:739  2006-11-21 16:55:30  得分:0

    $n = date('W');
    $d = ((7 - date('w', strtotime('2006-1-1'))) % 7) + 1;
    echo date('第一周从 Y-m-d 开始', strtotime("2006-1-1 +$d day"));
    echo date("第 $n 周从 Y-m-d 开始", strtotime("2006-1-1 +$d day +$n week -1 week"));正解