. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
| Server IP : 54.36.91.62 / Your IP :
216.73.216.178 [
Web Server : Apache System : Linux webm002.cluster127.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64 User : eticmes ( 123698) PHP Version : 7.4.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl Domains : 2 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/eticmes/www/wp-content/plugins/the-events-calendar/src/Tribe/ |
Upload File : |
<?php
class Tribe__Events__Constants implements ArrayAccess {
/**
* @var bool Whether the class will define and read real constants or not.
*/
protected $volatile;
/**
* @var array An array that will store volatile values if the class is used in volatile mode.
*/
protected $volatile_values;
/**
* Tribe__Events__Constants constructor.
*
* @param bool $volatile If `true` the class will not define and read real constants.
*/
#[\ReturnTypeWillChange]
public function __construct( $volatile = false ) {
$this->volatile = $volatile;
$this->volatile_values = [];
}
/**
* Whether a constant is defined or not.
*
* @param string $offset
*
* @return bool
*/
#[\ReturnTypeWillChange]
public function offsetExists( $offset ): bool {
return $this->volatile ? isset( $this->volatile_values[ $offset ] ) : defined( $offset );
}
/**
* Gets a constant value.
*
* @param string $offset
*
* @return mixed
*/
#[\ReturnTypeWillChange]
public function offsetGet( $offset ) {
return $this->volatile ? $this->volatile_values[ $offset ] : constant( $offset );
}
/**
* Sets the value of a constant if not already defined.
*
* @param string $offset
* @param mixed $value
*/
#[\ReturnTypeWillChange]
public function offsetSet( $offset, $value ): void {
if ( $this->volatile && ! isset( $this->volatile_values[ $offset ] ) ) {
$this->volatile_values[ $offset ] = $value;
} else {
if ( ! defined( $offset ) ) {
define( $offset, $value );
}
}
}
/**
* Unsets a constant if in volatile mode.
*
* @param string $offset
*/
#[\ReturnTypeWillChange]
public function offsetUnset( $offset ): void {
if ( $this->volatile ) {
$this->volatile_values = array_diff( $this->volatile_values, [ $offset ] );
} else {
// no op
}
}
}