Класс JsonType
Конвертер типов JSON.
Используется для преобразования данных JSON между PHP и типами базы данных.
- Cake\Database\Type implements Cake\Database\TypeInterface
-
Cake\Database\Type\JsonType implements Cake\Database\TypeInterface, Cake\Database\Type\BatchCastingInterface
Краткое описание свойств
-
$_nameprotectedИмя идентификатора для этого типа.string|null
Наследованные свойства
Краткое описание методов
- __construct() publicКонструктор.
- manyToPHP() public
Возвращает массив значений, преобразованных в представление PHP этого типа.
- marshal() publicПреобразует данные запроса в структуру, совместимую с JSON.
- toDatabase() publicПреобразует данные значения в строку JSON
- toPHP() publicПреобразует строковые значения в массивы PHP.
- toStatement() publicПолучение правильного типа привязки PDO для строковых данных.
Подробное описание методов
__construct()source public
__construct( string|null $name = null )
Конструктор.
(Этот метод объявлен здесь повторно, чтобы в будущем можно было удалить наследование от Cake\Database\Type.)
Параметры
- строка|null
$nameнеобязательно null - Имя, идентифицирующее этот тип
Переопределяет
Cake\Database\Type::__construct() manyToPHP()source public
manyToPHP( array $values , array $fields , Cake\Database\Driver $driver )
Возвращает массив значений, преобразованных в представление PHP этого типа.
Параметры
- массив
$values - Исходный массив значений, содержащий поля, которые необходимо преобразовать
- массив
$fields - Ключи полей, которые нужно преобразовать
-
Cake\Database\Driver$driver - Объект, из которого будут извлечены настройки и конфигурация базы данных.
Возвращает
массивРеализация
Cake\Database\Type\BatchCastingInterface::manyToPHP() marshal()source public
marshal( mixed $value )
Преобразует данные запроса в структуру, совместимую с JSON.
Параметры
- смешанное
$value - Значение для преобразования.
Возвращает
смешанноеПреобразованное значение.
Переопределяет
Cake\Database\Type::marshal() Реализация
Cake\Database\TypeInterface::marshal() toDatabase()source public
toDatabase( mixed $value , Cake\Database\Driver $driver )
Преобразует данные значения в строку JSON
Параметры
- смешанное
$value - Значение для преобразования.
-
Cake\Database\Driver$driver - Экземпляр драйвера для преобразования.
Возвращает
строка|nullПереопределяет
Cake\Database\Type::toDatabase() Реализация
Cake\Database\TypeInterface::toDatabase() toPHP()source public
toPHP( mixed $value , Cake\Database\Driver $driver )
Преобразует строковые значения в массивы PHP.
Параметры
- смешанное
$value - Значение для преобразования.
-
Cake\Database\Driver$driver - Экземпляр драйвера для преобразования.
Возвращает
строка|null|массивПереопределяет
Cake\Database\Type::toPHP() Реализация
Cake\Database\TypeInterface::toPHP() toStatement()source public
toStatement( mixed $value , Cake\Database\Driver $driver )
Получение правильного типа привязки PDO для строковых данных.
Параметры
- смешанное
$value - Связываемое значение.
-
Cake\Database\Driver$driver - Драйвер.
Возвращает
целое числоПереопределяет
Cake\Database\Type::toStatement() Реализация
Cake\Database\TypeInterface::toStatement() Наследованные методы из Cake\Database\Type
__debugInfo()source public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
массив_basicTypeCast()source protected устарело
_basicTypeCast( mixed $value )
Проверяет, является ли этот тип базовый и может ли он быть преобразован с помощью обратного вызова Если это так, возвращает преобразованное значение
Устарело
3.1 Все типы теперь должны быть отдельным классомПараметры
- смешанное
$value - Значение, которое необходимо преобразовать в PHP-эквивалент
Возвращает
смешанноеboolval()source public static устарело
boolval( mixed $value )
Конвертер типов для логических значений.
Преобразует строки true/false в логические значения.
Устарело
3.1.8 Этот метод больше не используется.Параметры
- смешанное
$value - Значение для преобразования в логическое.
Возвращает
логическое значениеbuild()source public static
build( string $name )
Возвращает объект Type, способный преобразовывать тип, идентифицируемый по имени.
Параметры
- строка
$name - идентификатор типа
Возвращает
Cake\Database\TypeИсключения
InvalidArgumentExceptionЕсли идентификатор типа неизвестен
buildAll()source public static
buildAll( )
Возвращает массив со всеми сопоставленными объектами типа, индексированными по имени.
Возвращает
массивclear()source public static
clear( )
Очищает все созданные экземпляры и сопоставленные классы типов, полезно для тестирования
getBaseType()source public
getBaseType( )
Возвращает имя базового типа, от которого унаследован этот класс.
Возвращает
строкаИмя базового типа, от которого унаследован этот класс.
Реализация
Cake\Database\TypeInterface::getBaseType() getMap()source public static
getMap( string|null $type = null )
Получение сопоставленного имени класса или экземпляра для типа(ов).
Параметры
- строка|null
$typeнеобязательно null - Имя типа для получения сопоставленного класса или null для получения массива сопоставлений.
Возвращает
массив|строка|Cake\Database\TypeInterface|nullНастроенное имя класса или экземпляра для заданного $type или массив сопоставлений.
С тех пор как
3.6.2getName()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.2strval()source public static устарело
strval( mixed $value )
Преобразователь типов для строковых значений.
Преобразует значения в строки
Устарело
3.1.8 Этот метод больше не используется.Параметры
- mixed
$value - Значение, которое нужно преобразовать в строку.
Возвращает
stringПодробное описание свойств
$_namesource
protected string|null
Имя идентификатора этого типа.
(Это свойство объявляется здесь снова, чтобы в будущем можно было удалить наследование от Cake\Database\Type.)
© 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.JsonType.html