我的理解是你无法从日期对象访问开始日期和当前日期。我目前的PHP是5.5,有没有解决方法,因为我无法升级到php 5.6或php 7,我需要获取这些日期。
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 :(得分:1)
DatePeriod
是Traversable
接口实现。它仅支持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 );