Класс DateTimeTimezoneType
Расширяет DateTimeType с поддержкой часовых поясов.
Краткое описание свойств
- $_className protected
stringИмя класса, используемого при создании объектов.
- $_format protected
stringФормат DateTime, используемый при преобразовании в строку.
- $_localeMarshalFormat protected
string|array|intФормат, учитывающий локаль,
marshal()используемый, когда_useLocaleParserравен true. - $_marshalFormats protected
arrayФорматы DateTime, разрешённые
marshal(). - $_name protected
string|nullИдентификатор имени для этого типа.
- $_useLocaleMarshal protected
boolИспользовать ли
marshal()локально-чувствительный анализатор с_localeMarshalFormat. - $dbTimezone protected
DateTimeZone|nullЧасовой пояс базы данных.
- $defaultTimezone protected
DateTimeZoneПо умолчанию часовой пояс.
- $keepDatabaseTimezone protected
boolСохранять ли часовой пояс базы данных при преобразовании.
- $setToDateStart protected
boolНужно ли переопределять время преобразованных объектов Time, чтобы они указывали на начало дня?
Краткое описание методов
-
__construct() public
Конструктор
-
_parseLocaleValue() protected
Преобразует строку в объект DateTime после её разбора с помощью локально-чувствительного анализатора с форматом, заданным
setLocaleFormat(). -
_parseValue() protected
Преобразует строку в объект DateTime после её разбора с помощью форматов в
_marshalFormats. -
_setClassName() protected
Установить имя класса для использования при создании объектов.
-
getBaseType() public
Возвращает имя базового типа, от которого наследуется этот класс.
-
getDateTimeClassName() public
Получить имя класса, используемого для создания объектов.
-
getName() public
Возвращает имя идентификатора типа для этого объекта.
-
manyToPHP() public
Возвращает массив значений, преобразованных в представление PHP для этого типа.
-
marshal() public
Преобразование данных запроса в объект datetime.
-
newId() public
Генерация нового значения первичного ключа для заданного типа.
-
setDatabaseTimezone() public
Установить часовой пояс базы данных.
-
setKeepDatabaseTimezone() public
Установить, сохраняется ли часовой пояс DateTime-объекта, созданного из строки базы данных, при преобразовании в часовой пояс по умолчанию.
-
setLocaleFormat() public
Устанавливает локально-чувствительный формат, используемый
marshal()при разборе строк. -
setTimezone() public deprecated
Псевдоним для
setDatabaseTimezone(). -
toDatabase() public
Преобразование экземпляра DateTime в строки.
-
toPHP() public
Преобразует данное значение из типа базы данных в эквивалент PHP.
-
toStatement() public
Преобразует данное значение в эквивалент Statement.
-
useImmutable() public
Изменить предпочтительное имя класса на реализацию FrozenTime.
-
useLocaleParser() public
Устанавливает, использовать ли при разборе строк, передаваемых в
marshal(), локально-чувствительный формат, установленныйsetLocaleFormat(). -
useMutable() public
Изменить предпочтительное имя класса на реализацию изменяемого объекта Time.
Подробное описание методов
__construct() public
__construct(string|null $name = null)
Конструктор
Параметры
-
string|null$name optional Имя, идентифицирующее этот тип
_parseLocaleValue() protected
_parseLocaleValue(string $value): Cake\I18n\I18nDateTimeInterface|null
Преобразует строку в объект DateTime после анализа с помощью анализатора, учитывающего локаль, с форматом, заданным setLocaleFormat().
Параметры
-
string$value Значение для анализа и преобразования в объект.
Возвращает
Cake\I18n\I18nDateTimeInterface|null_parseValue() protected
_parseValue(string $value): DateTimeInterface|null
Преобразует строку в объект DateTime после анализа с использованием форматов в _marshalFormats.
Параметры
-
string$value Значение для анализа и преобразования в объект.
Возвращает
DateTimeInterface|null_setClassName() protected
_setClassName(string $class, string $fallback): void
Устанавливает имя класса, используемое при создании объектов.
Параметры
-
string$class Имя класса для использования.
-
string$fallback Имя класса для использования, когда предпочтительный класс не существует.
Возвращает
voidgetBaseType() public
getBaseType(): string|null
Возвращает имя базового типа, который наследует этот класс.
Это полезно при расширении базового типа для добавления дополнительной функциональности, но при этом нужно, чтобы остальная часть фреймворка использовала те же предположения, что и для базового типа, от которого он наследуется.
Возвращает
string|nullgetDateTimeClassName() public
getDateTimeClassName(): string
Получает имя класса, используемое для создания объектов.
Возвращает
stringgetName() public
getName(): string|null
Возвращает имя идентификатора типа для этого объекта.
Возвращает
string|nullmanyToPHP() public
manyToPHP(array $values, string[] $fields, Cake\Database\DriverInterface $driver): array
Возвращает массив значений, преобразованных в PHP-представление этого типа.
Параметры
-
array$values -
string[]$fields -
Cake\Database\DriverInterface$driver
Возвращает
arraymarshal() public
marshal(mixed $value): DateTimeInterface|null
Преобразует данные запроса в объект datetime.
Наиболее полезно для преобразования данных запроса в объекты PHP, которые имеют смысл для остальных слоев ORM/базы данных.
Параметры
-
mixed$value Данные запроса
Возвращает
DateTimeInterface|nullnewId() public
newId(): mixed
Генерирует новое значение первичного ключа для данного типа.
Этот метод может использоваться типами для создания новых значений первичных ключей при вставке сущностей.
Возвращает
mixedsetDatabaseTimezone() public
setDatabaseTimezone(stringDateTimeZone|null $timezone): $this
Установить часовой пояс базы данных.
Это часовой пояс, используемый при преобразовании строк базы данных в экземпляры DateTime и преобразовании экземпляров DateTime в строки базы данных.
Параметры
-
stringDateTimeZone|null$timezone Часовой пояс базы данных.
Возвращает
$thisСм. также
setKeepDatabaseTimezone() public
setKeepDatabaseTimezone(bool $keep): $this
Установить, преобразуется ли объект DateTime, созданный из строки базы данных, в часовой пояс по умолчанию.
Если ваши даты и время в базе данных находятся в определенном часовом поясе, который вы хотите сохранить в экземпляре DateTime, то установите это значение в true.
Если false, часовые пояса datetime преобразуются в часовой пояс по умолчанию. Это поведение по умолчанию.
Параметры
-
bool$keep Если true, часовой пояс базы данных сохраняется при преобразовании в экземпляры DateTime.
Возвращает
$thissetLocaleFormat() public
setLocaleFormat(string|array $format): $this
Устанавливает формат, учитывающий локаль, используемый marshal() при анализе строк.
См. Cake\I18n\Time::parseDateTime() для допустимых форматов.
Параметры
-
string|array$format Формат, учитывающий локаль
Возвращает
$thisСм. также
setTimezone() public
setTimezone(stringDateTimeZone|null $timezone): $this
Псевдоним для setDatabaseTimezone().
Параметры
-
stringDateTimeZone|null$timezone Часовой пояс базы данных.
Возвращает
$thistoDatabase() public
toDatabase(mixed $value, Cake\Database\DriverInterface $driver): string|null
Преобразует экземпляр DateTime в строки.
Параметры
-
mixed$value Значение для преобразования.
-
Cake\Database\DriverInterface$driver Экземпляр драйвера для преобразования.
Возвращает
string|nulltoPHP() public
toPHP(mixed $value, Cake\Database\DriverInterface $driver): DateTimeInterface|null
Преобразует заданное значение из типа базы данных в эквивалент PHP.
Параметры
-
mixed$value Значение, которое нужно преобразовать в эквивалент PHP
-
Cake\Database\DriverInterface$driver Объект, из которого будут извлечены настройки и конфигурация базы данных
Возвращает
DateTimeInterface|nulltoStatement() public
toStatement(mixed $value, Cake\Database\DriverInterface $driver): mixed
Преобразует заданное значение в эквивалент Statement
Параметры
-
mixed$value значение для преобразования в инструкцию PDO
-
Cake\Database\DriverInterface$driver объект, из которого будут извлечены настройки и конфигурация базы данных
Возвращает
mixeduseImmutable() public
useImmutable(): $this
Изменяет предпочтительное имя класса на реализацию FrozenTime.
Возвращает
$thisuseLocaleParser() public
useLocaleParser(bool $enable = true): $this
Устанавливает, следует ли анализировать строки, переданные в marshal(), используя формат, учитывающий локаль, установленный setLocaleFormat().
Параметры
-
bool$enable optional Включать или нет
Возвращает
$thisuseMutable() public
useMutable(): $this
Изменяет предпочтительное имя класса на изменяемую реализацию Time.
Возвращает
$thisПодробное описание свойств
$_className protected
Имя класса, используемого при создании объектов.
Тип
string$_format protected
Формат DateTime, используемый при преобразовании в строку.
Тип
string$_localeMarshalFormat protected
Локализованный формат marshal(), используемый, когда _useLocaleParser равно true.
См. Cake\I18n\Time::parseDateTime() для допустимых форматов.
Тип
string|array|int$_marshalFormats protected
Форматы DateTime, разрешенные marshal().
Тип
array$_name protected
Имя идентификатора для данного типа.
Тип
string|null$_useLocaleMarshal protected
Определяет, должен ли marshal() использовать локализованный парсер с _localeMarshalFormat.
Тип
bool$dbTimezone protected
Временная зона базы данных.
Тип
DateTimeZone|null$defaultTimezone protected
Временная зона по умолчанию.
Тип
DateTimeZone$keepDatabaseTimezone protected
Сохранять ли временную зону базы данных при преобразовании
Тип
bool$setToDateStart protected
Определяет, следует ли переопределять время преобразованных объектов Time так, чтобы оно указывало на начало дня.
Это в первую очередь для того, чтобы подклассы не нуждались в повторной реализации этой функциональности.
Тип
bool
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.2/class-Cake.Database.Type.DateTimeTimezoneType.html