2015-06-10 12 views
5

Come posso ottenere il giorno corrente, domani e il giorno successivo in PHP ma ignori i fine settimana?php get oggi domani e il giorno successivo ma ignora i fine settimana

Ho già provato questo codice, ma includerà sabato e domenica.

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

Grazie.

risposta

7

Usa Weekday(s) con strtotime

date('l', strtotime(' +2 Weekdays')); 

Fiddle

+0

eccellente, grazie – V4n1ll4

2

Ciò trova la prossima settimana da una data specifica (ad esclusione di Sabato o Domenica):

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

Si potrebbe anche fare ovviamente con una variabile data:

$myDate = '2011-04-05'; 
echo date('Y-m-d', strtotime($myDate . ' +2 Weekday')); 
0

Prova questo, Ottieni la data tra due date senza giorni feriali (sabato e domenica).

$ startdate = '10 -06-2015 ';

$ endDate = '17 -06-2015 ';

$ Giorni feriali = getdateBettwoDate ($ startdate, $ endDate);

print_r ($ Giorni feriali);

funzione 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 ; 
} 
Problemi correlati