| Server IP : 89.108.64.180 / Your IP : 216.73.217.92 Web Server : Apache/2.4.41 (Ubuntu) System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-root ( 1010) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/poseidon-gagra.ru/wp-content/plugins/awebooking/inc/Support/ |
Upload File : |
<?php
namespace AweBooking\Support;
use League\Period\Period as League_Period;
class Period extends League_Period {
/**
* Create a period instance.
*
* @param mixed $start_date Starting date point.
* @param mixed $end_date Ending date point.
* @return static
*/
public static function create( $start_date, $end_date ) {
return new static( $start_date, $end_date );
}
/**
* Create date period.
*
* @param mixed $start_date Starting date point.
* @param mixed $end_date Ending date point.
*/
public function __construct( $start_date, $end_date ) {
parent::__construct( abrs_date_time( $start_date ), abrs_date_time( $end_date ) );
}
/**
* Returns the starting date point.
*
* @return \AweBooking\Support\Carbonate
*/
public function get_start_date() {
return abrs_date_time( $this->getStartDate() );
}
/**
* Returns the ending datepoint.
*
* @return \AweBooking\Support\Carbonate
*/
public function get_end_date() {
return abrs_date_time( $this->getEndDate() );
}
/**
* Format the period at the start datepoint.
*
* @param string $format The date format string.
* @return string
*/
public function format( $format ) {
return $this->get_start_date()->format( $format );
}
/**
* Check a property exists.
*
* @param string $name The property name.
* @return bool
*/
public function __isset( $name ) {
if ( in_array( $name, [ 'start_date', 'end_date' ] ) ) {
return true;
}
return property_exists( $this, $name );
}
/**
* Getter class property.
*
* @param string $property The property name.
* @return mixed
*
* @throws \InvalidArgumentException
*/
public function __get( $property ) {
switch ( $property ) {
case 'days':
return (int) $this->getDateInterval()->format( '%r%a' );
case 'start_date':
return $this->get_start_date();
case 'end_date':
return $this->get_end_date();
}
throw new \InvalidArgumentException( "Unknown getter '{$property}'" );
}
/**
* Setter.
*
* @param string $name The property name.
* @param mixed $value The value.
*/
public function __set( $name, $value ) {
// ...
}
}