Question

Après avoir effectué des recherches sur DatePeriod, il s'avère que par défaut exclut la fin de fin, même si elle ne déclare pas explicitement que n'importe où dans le manuel PHP. Je n'ai pas non plus remarqué d'option pour l'inclure. La seule option semble être l'option pour exclure la date de début. Quelqu'un d'autre a-t-il rencontré cela?

Était-ce utile?

La solution

tu as oublié l'heure

  $start_date = '02/28/2012 00:00:00';
  $end_date = '02/29/2012 23:59:59';
  $intrDate = '1D';

  $start = new \DateTime($start_date);
  $end = new \DateTime($end_date);
  $interval = new \DateInterval('P'.$intrDate);
  $period = new \DatePeriod($start, $interval, $end);

  print_r($start_date);
  print_r($end_date);
  print_r($period);

  foreach ($period as $day) {
          $dates[] = array(
              'eventID' => $event_id, 
              'date' => $day->format('Y-m-d'), 
              'max' => $data['numAttending']);
      }

  print_r($dates);
  exit;

Cette sortie:

Array
(
    [0] => Array
        (
            [eventID] => 
            [date] => 2012-02-28
            [max] => 
        )

    [1] => Array
        (
            [eventID] => 
            [date] => 2012-02-29
            [max] => 
        )

)

Sans le temps, vous obtiendrez:

Array
(
    [0] => Array
        (
            [eventID] => 
            [date] => 2012-02-28
            [max] => 
        )

)

Autres conseils

PHP.NET QUOTE

L - si c'est une année de saut

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top