Класс DateTimeFractionalType
Расширяет DateTimeType, поддерживая дробные секунды до микросекунд.
Краткое описание свойств
- $_className protected
stringИмя класса, используемого при создании объектов.
- $_format protected
stringФормат DateTime, используемый при преобразовании в строку.
- $_localeMarshalFormat protected
array|string|intФормат, учитывающий локаль,
marshal(), используемый, когда_useLocaleParserравно true. - $_marshalFormats protected
array<string>Форматы 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, чтобы оно указывало на начало дня.
- $userTimezone protected
DateTimeZone|nullВременная зона пользователя.
Краткое описание методов
-
__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(). -
setUserTimezone() public
Установить временную зону пользователя.
-
toDatabase() public
Преобразовать экземпляр DateTime в строки.
-
toPHP() public
Преобразует данное значение из типа базы данных в эквивалент PHP.
-
toStatement() public
Преобразует данное значение в эквивалент Statement.
-
useImmutable() public deprecated
Изменить предпочтительное имя класса на реализацию FrozenTime.
-
useLocaleParser() public
Устанавливает, нужно ли анализировать строки, передаваемые в
marshal()с использованием локально-зависимого формата, установленногоsetLocaleFormat(). -
useMutable() public deprecated
Изменить предпочтительное имя класса на реализацию изменяемого 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, array<string> $fields, Cake\Database\DriverInterface $driver): array<string, mixed>
Возвращает массив значений, преобразованных в PHP-представление этого типа.
Параметры
-
array$values -
array<string>$fields -
Cake\Database\DriverInterface$driver
Возвращает
array<string, mixed>marshal() public
marshal(mixed $value): DateTimeInterface|null
Преобразует данные запроса в объект datetime.
Наиболее полезно для преобразования данных запроса в объекты PHP, которые имеют смысл для остальных уровней ORM/базы данных.
Параметры
-
mixed$value Данные запроса
Возвращает
DateTimeInterface|nullnewId() public
newId(): mixed
Генерирует новое значение первичного ключа для заданного типа.
Этот метод может использоваться типами для создания новых значений первичных ключей при вставке сущностей.
Возвращает
mixedsetDatabaseTimezone() public
setDatabaseTimezone(DateTimeZone|string|null $timezone): $this
Установить часовой пояс базы данных.
Это часовой пояс, используемый при преобразовании строк базы данных в экземпляры DateTime и преобразовании экземпляров DateTime в строки базы данных.
Параметры
-
DateTimeZone|string|null$timezone Часовой пояс базы данных.
Возвращает
$thisСм. также
setKeepDatabaseTimezone() public
setKeepDatabaseTimezone(bool $keep): $this
Установить, преобразуется ли объект DateTime, созданный из строки базы данных, в часовой пояс по умолчанию.
Если ваши даты и время в базе данных находятся в определенном часовом поясе, который вы хотите сохранить в экземпляре DateTime, то установите это значение в true.
Если false, часовые пояса datetime преобразуются в часовой пояс по умолчанию. Это поведение по умолчанию.
Параметры
-
bool$keep Если true, часовой пояс базы данных сохраняется при преобразовании в экземпляры DateTime.
Возвращает
$thissetLocaleFormat() public
setLocaleFormat(array|string $format): $this
Устанавливает формат, учитывающий параметры локализации, используемый marshal() при анализе строк.
См. Cake\I18n\Time::parseDateTime() для допустимых форматов.
Параметры
-
array|string$format Формат, учитывающий параметры локализации
Возвращает
$thisСм. также
setTimezone() public
setTimezone(DateTimeZone|string|null $timezone): $this
Псевдоним для setDatabaseTimezone().
Параметры
-
DateTimeZone|string|null$timezone Часовой пояс базы данных.
Возвращает
$thissetUserTimezone() public
setUserTimezone(DateTimeZone|string|null $timezone): $this
Установить часовой пояс пользователя.
Это часовой пояс, используемый при преобразовании строк в экземпляры DateTime.
Параметры
-
DateTimeZone|string|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(), чтобы ознакомиться с допустимыми форматами.
Тип
array|string|int$_marshalFormats protected
Допустимые форматы DateTime, разрешенные marshal().
Тип
array<string>$_name protected
Идентификатор имени для этого типа.
Тип
string|null$_useLocaleMarshal protected
Использовать ли marshal() парсер, учитывающий локаль, с _localeMarshalFormat.
Тип
bool$dbTimezone protected
Временная зона базы данных.
Тип
DateTimeZone|null$defaultTimezone protected
Временная зона по умолчанию.
Тип
DateTimeZone$keepDatabaseTimezone protected
Сохранять ли временную зону базы данных при преобразовании.
Тип
bool$setToDateStart protected
Нужно ли переопределить время преобразованных объектов Time, чтобы они указывали на начало дня.
Это в основном для того, чтобы подклассы не нуждались в повторной реализации той же функциональности.
Тип
bool$userTimezone protected
Временная зона пользователя.
Тип
DateTimeZone|null
© 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.4/class-Cake.Database.Type.DateTimeFractionalType.html