如何在PHP中找到任何一周的开头?

时间:2011-11-22 20:33:40

标签: php date

  

可能重复:
  Get first day of week in PHP?

我有这个脚本给了我本周的开始和结束:

$begweek = (date('l') == 'Monday')?date('Y-m-d'):date('Y-m-d',strtotime('last monday'));
echo $begweek;

echo "<br>";
$endweek = (date('l') == 'Sunday')?date('Y-m-d'):date('Y-m-d',strtotime('Sunday'));
echo $endweek;
如果我通过随机日期,我需要的是找到任何一周的开始和结束的方法,例如$date="2011-11-15";

关于我需要在当前脚本中修改以适应此变量的想法?

感谢

3 个答案:

答案 0 :(得分:3)

日期函数采用第二个参数。

代码

function blah($date){

    $begweek = (date('l', strtotime($date)) == 'Monday')?date('Y-m-d', strtotime($date)):date('Y-m-d',strtotime('last monday', strtotime($date)));
    echo $begweek;

    echo "<br>";
    $endweek = (date('l', strtotime($date)) == 'Sunday')?date('Y-m-d', strtotime($date)):date('Y-m-d',strtotime('Sunday', strtotime($date)));
    echo $endweek;

}

blah("2011-11-15");

输出

2011-11-14 2011-11-20

答案 1 :(得分:0)

date采用第二个参数,即获取

日期的时间戳

使用strtotime获取时间戳。

date( 'l', strtotime( $date ) );

答案 2 :(得分:0)

使用'last monday',但只是将strtotime()随机日期的时间戳作为第二个参数传递。