Spec-Zone.ru › CakePHP 3.6

Класс DateTimeType

Конвертер типа DateTime.

Используется для преобразования экземпляров datetime в строки и обратно.

Cake\Database\Type implements Cake\Database\TypeInterface
Extended by Cake\Database\Type\DateTimeType implements Cake\Database\TypeInterface, Cake\Database\Type\BatchCastingInterface

Прямые подклассы

  • Cake\Database\Type\DateType
  • Cake\Database\Type\TimeType
Пространство имён: Cake\Database\Type
Расположение: Database/Type/DateTimeType.php

Краткое описание свойств

  • $_className protected
    string
    Имя класса для создания объектов.
  • $_datetimeInstance protected
    DateTime

    Экземпляр сконфигурированного dateTimeClass, используемый для быстрого создания новых экземпляров без вызова конструктора.

  • $_format protected
    string|array
    Формат строки для парсинга DateTime
  • $_localeFormat protected
    string|array|integer
    Формат даты для парсинга входящих дат для маршалинга.
  • $_name protected
    string|null
    Имя идентификатора для этого типа.
  • $_useLocaleParser protected
    boolean

    Необходимо ли использовать локально-ориентированный парсер для парсинга дат при маршалинге входных строк.

  • $dateTimeClass public static
    string
    Класс для представления объектов дат
  • $dbTimezone protected
    DateTimeZone|null
    Экземпляр часового пояса.
  • $setToDateStart protected
    boolean

    Нужно ли переопределять время преобразованных объектов Time, чтобы оно указывало на начало дня.

Унаследованные свойства

  • _basicTypes, _builtTypes, _types

Краткое описание методов

  • __construct() public
    Конструктор
  • _compare() protected
  • _parseValue() protected

    Преобразует строку в объект DateTime после её парсинга с помощью локально-ориентированного парсера со заданным форматом.

  • _setClassName() protected
    Установить имя класса для создания объектов.
  • getDateTimeClassName() public
    Получить имя класса, используемого для создания объектов.
  • manyToPHP() public

    Возвращает массив значений, преобразованных в представление PHP этого типа.

  • marshal() public
    Преобразовать данные запроса в объект datetime.
  • setLocaleFormat() public

    Устанавливает строку формата для парсинга дат в этом классе. Форматы, которые принимаются, описаны в функции Cake\I18n\Time::parseDateTime().

  • setTimezone() public
    Установить часовой пояс базы данных.
  • toDatabase() public
    Преобразовать экземпляр DateTime в строки.
  • toPHP() public
    Преобразовать строки в экземпляры DateTime.
  • toStatement() public
    Преобразует заданное значение в эквивалент Statement
  • useImmutable() public
    Изменить предпочтительное имя класса на реализацию FrozenTime.
  • useLocaleParser() public

    Устанавливает, нужно ли использовать локально-ориентированный парсер для парсинга дат, переданных в функцию marshal().

  • useMutable() public
    Изменить предпочтительное имя класса на реализацию изменяемого объекта Time.

Подробное описание методов

__construct()source public

__construct( string|null $name = null )

Конструктор

Параметры

string|null $name optional null
Имя, идентифицирующее этот тип

Переопределяет

Cake\Database\Type::__construct()

_compare()source protected

_compare( Cake\I18n\Time|DateTime $date , mixed $value )

Параметры

Cake\I18n\Time|DateTime $date
Объект DateTime
mixed $value
Данные запроса

Возвращает

boolean

_parseValue()source protected

_parseValue( string $value )

Преобразует строку в объект DateTime после её парсинга с помощью локально-ориентированного парсера со заданным форматом.

Параметры

string $value
Значение для парсинга и преобразования в объект.

Возвращает

Cake\I18n\Time|null

_setClassName()source protected

_setClassName( string $class , string $fallback )

Установить имя класса для создания объектов.

Параметры

string $class
Имя класса для использования.
string $fallback
Имя класса для использования, если предпочтительный класс отсутствует.

getDateTimeClassName()source public

getDateTimeClassName( )

Получить имя класса, используемого для создания объектов.

Возвращает

string

manyToPHP()source public

manyToPHP( array $values , array $fields , Cake\Database\Driver $driver )

Возвращает массив значений, преобразованных в представление PHP этого типа.

Параметры

array $values
Исходный массив значений, содержащий поля для преобразования
array $fields
Ключи полей для преобразования
Cake\Database\Driver $driver
Объект, из которого будут извлечены предпочтения и конфигурация базы данных.

Возвращает

array

Реализация

Cake\Database\Type\BatchCastingInterface::manyToPHP()

marshal()source public

marshal( mixed $value )

Преобразовать данные запроса в объект datetime.

Параметры

mixed $value
Данные запроса

Возвращает

DateTimeInterface|null

Переопределяет

Cake\Database\Type::marshal()

Реализация

Cake\Database\TypeInterface::marshal()

setLocaleFormat()source public

setLocaleFormat( string|array $format )

Устанавливает строку формата для парсинга дат в этом классе. Форматы, которые принимаются, описаны в функции Cake\I18n\Time::parseDateTime().

Параметры

string|array $format
Формат, в котором передаются строки.

Возвращает


$this

См. также

\Cake\I18n\Time::parseDateTime()

setTimezone()source public

setTimezone( string|DateTimeZone|null $timezone )

Устанавливает часовой пояс базы данных.

Установленный часовой пояс будет установлен для объектов DateTime перед генерацией строки datetime для сохранения в базе данных. Если null, преобразование часовых поясов не будет выполнено.

Параметры

string|DateTimeZone|null $timezone
Часовой пояс базы данных.

Возвращает


$this

toDatabase()source public

toDatabase( string|integer|DateTime|DateTimeImmutable $value , Cake\Database\Driver $driver )

Преобразует экземпляр DateTime в строки.

Параметры

string|integer|DateTime|DateTimeImmutable $value
Значение для преобразования.
Cake\Database\Driver $driver
Экземпляр драйвера для преобразования.

Возвращает

string|null

Переопределяет

Cake\Database\Type::toDatabase()

Реализация

Cake\Database\TypeInterface::toDatabase()

toPHP()source public

toPHP( string $value , Cake\Database\Driver $driver )

Преобразует строки в экземпляры DateTime.

Параметры

string $value
Значение для преобразования.
Cake\Database\Driver $driver
Экземпляр драйвера для преобразования.

Возвращает

Cake\I18n\Time|DateTime|null

Переопределяет

Cake\Database\Type::toPHP()

Реализация

Cake\Database\TypeInterface::toPHP()

toStatement()source public

toStatement( mixed $value , Cake\Database\Driver $driver )

Преобразует заданное значение в эквивалент Statement.

Параметры

mixed $value
значение, которое должно быть преобразовано в PDO statement
Cake\Database\Driver $driver
объект, из которого будут извлечены настройки и конфигурация базы данных

Возвращает

mixed

Переопределяет

Cake\Database\Type::toStatement()

Реализация

Cake\Database\TypeInterface::toStatement()

useImmutable()source public

useImmutable( )

Изменить предпочтительное имя класса на реализацию FrozenTime.

Возвращает


$this

useLocaleParser()source public

useLocaleParser( boolean $enable = true )

Устанавливает, нужно ли парсить даты, переданные в функцию marshal(), с использованием локально-ориентированного парсера.

Параметры

boolean $enable необязательно true
Включить или выключить.

Возвращает


$this

useMutable()source public

useMutable( )

Изменить предпочтительное имя класса на реализацию mutable Time.

Возвращает


$this

Методы, унаследованные от Cake\Database\Type

__debugInfo()source public

__debugInfo( )

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

array

_basicTypeCast()source protected deprecated

_basicTypeCast( mixed $value )

Проверяет, является ли этот тип базовым и может ли он быть преобразован с помощью обратного вызова. Если это так, возвращает преобразованное значение.

Устарело

3.1 Все типы теперь должны быть конкретным классом

Параметры

mixed $value
Значение, которое должно быть преобразовано в PHP-эквивалент

Возвращает

mixed

boolval()source public static deprecated

boolval( mixed $value )

Преобразователь типов для булевых значений.

Преобразует строки true/false в булевы значения.

Устарело

3.1.8 Этот метод теперь не используется.

Параметры

mixed $value
Значение для преобразования в булево.

Возвращает

boolean

build()source public static

build( string $name )

Возвращает объект Type, способный преобразовывать тип, определенный по имени.

Параметры

string $name
идентификатор типа

Возвращает

Cake\Database\Type

Исключения

InvalidArgumentException
Если идентификатор типа неизвестен

buildAll()source public static

buildAll( )

Возвращает массив со всеми сопоставленными объектами типа, индексированными по имени.

Возвращает

array

clear()source public static

clear( )

Очищает все созданные экземпляры и сопоставленные классы типов, полезно для тестирования

getBaseType()source public

getBaseType( )

Возвращает базовое имя типа, которое наследуется этим классом.

Возвращает

string
Имя базового типа, который наследуется этим классом.

Реализация

Cake\Database\TypeInterface::getBaseType()

getMap()source public static

getMap( string|null $type = null )

Получить сопоставленное имя класса или экземпляр для типа(ов).

Параметры

string|null $type необязательно null
Имя типа, для которого нужно получить сопоставленный класс, или null для получения массива отображения.

Возвращает

array|string|Cake\Database\TypeInterface|null
Настроенное имя класса или экземпляр для заданного $type или массив отображения.

С версии

3.6.2

getName()source public

getName( )

Возвращает идентификатор имени типа для этого объекта.

Возвращает

string
Идентификатор имени типа для этого объекта.

Реализация

Cake\Database\TypeInterface::getName()

map()source public static

map( string|string[]|Cake\Database\Type[]|null $type = null , string|Cake\Database\Type|null $className = null )

Регистрирует новый идентификатор типа и сопоставляет его с полным именем класса с полным пространством имен. Если вызвана без аргументов, она вернет текущий массив отображения типов. Если $className опущен, она вернет сопоставленный класс для $type.

Устарело с версии 3.6.2: - Использование $type как string[]|\Cake\Database\Type[] устарело. Используйте Type::setMap() со string[] вместо этого. - Передача $className как \Cake\Database\Type экземпляра устарело, используйте только строку имени класса. - Использование этого метода в качестве геттера устарело. Используйте Type::getMap() вместо этого.

Параметры

string|string[]|Cake\Database\Type[]|null $type необязательно null
Если строковое имя типа для отображения, если массив списков массивов для отображения
string|Cake\Database\Type|null $className необязательно null
Имя класса или экземпляр объекта.

Возвращает

array|string|null

Если $type равен null, то массив с текущим отображением, если $className равен null, строка с настроенным именем класса для заданного $type, в противном случае null.


newId()source public

newId( )

Сгенерировать новое значение первичного ключа для заданного типа.

Возвращает

mixed
Новое значение первичного ключа.

Реализация

Cake\Database\TypeInterface::newId()

set()source public static

set( string $name , Cake\Database\Type $instance )

Возвращает объект Type, способный преобразовать тип, определённый по $name

Параметры

string $name
Идентификатор типа, который вы хотите установить.
Cake\Database\Type $instance
Экземпляр типа, который вы хотите установить.

setMap()source public static

setMap( array $map )

Установить отображение типов на имена классов.

Параметры

array $map
Список типов для сопоставления.

С версии

3.6.2

strval()source public static deprecated

strval( mixed $value )

Преобразователь типов для строковых значений.

Преобразует значения в строки

Устаревшее

3.1.8 Этот метод больше не используется.

Параметры

mixed $value
Значение, которое нужно преобразовать в строку.

Возвращает

string

Подробности свойств

$_classNamesource

protected string

Имя класса, используемое при создании объектов.

$_datetimeInstancesource

protected DateTime

Экземпляр настроенного класса dateTimeClass, используемый для быстрого создания новых экземпляров без вызова конструктора.

$_formatsource

protected string|array

Формат строки для разбора DateTime

[
    'Y-m-d H:i:s',
    'Y-m-d\TH:i:sP',
]

$_localeFormatsource

protected string|array|integer

Формат даты для разбора входящих дат для маршалинга.

$_namesource

protected string|null

Идентификатор имени для этого типа.

(Это свойство объявлено здесь снова, чтобы в будущем можно было удалить наследование от Cake\Database\Type.)

$_useLocaleParsersource

protected boolean

Должны ли даты разбираться с помощью локализованного анализатора при маршалинге строковых входных данных.

false

$dateTimeClasssource

public static string

Класс, который нужно использовать для представления объектов даты

Это свойство можно использовать только до того, как будет создан экземпляр этого типа класса. После этого используйте useMutable() или useImmutable() вместо этого.

Устаревшее

3.2.0 Используйте DateTimeType::useMutable() или DateTimeType::useImmutable() вместо этого.
'Cake\I18n\Time'

$dbTimezonesource

protected DateTimeZone|null

Экземпляр часового пояса.

$setToDateStartsource

protected boolean

Определяет, нужно ли перезаписывать время преобразованных объектов Time так, чтобы оно указывало на начало дня.

Это в первую очередь для того, чтобы подклассам не пришлось повторно реализовывать ту же функциональность.

false

© 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/3.6/class-Cake.Database.Type.DateTimeType.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API