获取今天、明天和后一天的日期,但忽略周末(PHP)。

5

如何在PHP中获取当天、明天和后天的日期,但忽略周末?

我已经尝试了这段代码,但它会包括星期六和星期日。

array(
    'todayDate' => date('d/m/Y')
    'tomorrowDate' => date('d/m/Y', strtotime(' +1 day')),
    'nextDay' => date('l', strtotime(' +2 day'))
)

感谢。
3个回答

9
使用strtotimeWeekday(s)函数。
date('l', strtotime(' +2 Weekdays'));

Fiddle


2

这个函数可以找到从特定日期开始的下一个工作日(不包括周六或周日):

echo date('Y-m-d', strtotime('2011-04-05 +2 Weekday'));

当然,您也可以使用日期变量来完成此操作:
$myDate = '2011-04-05';
echo date('Y-m-d', strtotime($myDate . ' +2 Weekday'));

0

尝试这个,获取两个日期之间不包括周末(星期六和星期天)的日期。

$startdate = '10-06-2015';

$endDate = '17-06-2015' ;

$Workingdays = getdateBettwoDate($startdate,$endDate);

print_r($Workingdays);

function getdateBettwoDate($startdate,$enddate) {

    $start    = new DateTime($startdate);
    $end      = new DateTime($enddate);
    $interval = DateInterval::createFromDateString('1 day');
    $period   = new DatePeriod($start, $interval, $end);
    $x=0;
    $a=array();      
    foreach ($period as $dt)
    {
        $temp=$dt->format("l d-m-Y");
        $ArTemp=explode(' ',$temp);
        if($ArTemp[0]=='Saturday' || $ArTemp[0]=='Sunday'){
        }else{
          $a[$x]=$ArTemp[1];
           $x++ ;
        }


    }       
    $a[$x]=date('l', strtotime( $enddate))." ".$enddate;
    return $a ;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接