Automattic\WooCommerce\Admin\API\Reports
TimeInterval::next_month_start()
Returns a new DateTime object representing the next month start, or previous month end if reversed.
Method of the class: TimeInterval{}
No Hooks.
Return
DateTime
.
Usage
$result = TimeInterval::next_month_start( $datetime, $reversed );
- $datetime(DateTime) (required)
- Date and time.
- $reversed(true|false)
- Going backwards in time instead of forward.
Default: false
TimeInterval::next_month_start() TimeInterval::next month start code WC 9.6.1
public static function next_month_start( $datetime, $reversed = false ) { $month_increment = 1; $year = $datetime->format( 'Y' ); $month = (int) $datetime->format( 'm' ); if ( $reversed ) { $beg_of_month_datetime = new \DateTime( "$year-$month-01 00:00:00", new \DateTimeZone( wc_timezone_string() ) ); $timestamp = (int) $beg_of_month_datetime->format( 'U' ); $end_of_prev_month_timestamp = $timestamp - 1; $datetime->setTimestamp( $end_of_prev_month_timestamp ); } else { $month += $month_increment; if ( $month > 12 ) { $month = 1; $year ++; } $day = '01'; $datetime = new \DateTime( "$year-$month-$day 00:00:00", new \DateTimeZone( wc_timezone_string() ) ); } return $datetime; }