//规则是:查询的是周六周日显示周五的;查询的是当天17点之前,那么显示昨天的;
if($DateNum == $TodayNum){//表示只判断今天的情况
if(date('H') < 17){
$Date = date("Y_m_d",time() - 86400);
}
}
//$weekarray=array("日","一","二","三","四","五","六"); 0表示星期日
if(date('w',strtotime(str_replace('_','-',$Date))) == 6){
$tempDateArray = explode('_', $Date);
$Date = date("Y_m_d",mktime(0,0,0,$tempDateArray[1],$tempDateArray[2],$tempDateArray[0]) - 86400);
}else if(date('w',strtotime(str_replace('_','-',$Date))) == 0){
$tempDateArray = explode('_', $Date);
$Date = date("Y_m_d",mktime(0,0,0,$tempDateArray[1],$tempDateArray[2],$tempDateArray[0]) - 2*86400);
}
上面是今天写的代码。
1. 判断星期几
date('w') -- 判断今天是星期几
date('w',strtotime(str_replace('_','-',$Date))) --判断某天是星期几 格式为date('w',unix时间毫秒)
注意上面返回的都是 数字,0123456.所以如果要显示中文的星期,可以定义下面的数组就可以了。
//$weekarray=array("日","一","二","三","四","五","六"); 0表示星期日
2.日期加减法
昨天 date("Y_m_d",time() - 86400); //86400 是一天的秒数
某天的前一天:date("Y_m_d",mktime(0,0,0,月,日,年)- 86400)