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