2016-04-09 8 views
0

私の理解は、あなたが日付期間のオブジェクトからのアクセスの開始と現在の日付を禁止することです。現在のPHPは5.5ですが、回避策があります。なぜなら、PHP 5.6またはPHP 7にアップグレードすることができないからです。その日付を取得する必要があります。php DatePeriodオブジェクトアクセスの開始と現在の日付

DatePeriod Object 
(
    [start] => DateTime Object 
     (
      [date] => 2016-04-03 00:00:00 
      [timezone_type] => 3 
      [timezone] => UTC 
     ) 

    [current] => DateTime Object 
     (
      [date] => 2016-04-10 00:00:00 
      [timezone_type] => 3 
      [timezone] => UTC 
     ) 
) 
+0

HHVMは、あなたができるように、あなたは)( '現在の'とDatePeriodクラスの '巻き戻し()'メソッドへのアクセスを提供しますそれらの値にアクセスする。 AFAIK PHPのバージョンはあなたにそれらにアクセスできます(7つではありません) –

答えて

1

DatePeriodTraversableインターフェースの実装です。 foreachループのみをサポートしています。

あなただけの配列に変換開始し、現在の要素を取得することができます。

$start = new DateTime('2016-03-01'); 
$end  = new DateTime('2016-03-31'); 

$interval = new DateInterval('P1D'); 
$period = new DatePeriod($start, $interval ,$end); 

$arPeriod = iterator_to_array($period); 

$startDate = $arPeriod[0]; 
next($arPeriod); 
$currentDate = current($arPeriod); 
関連する問題