Класс BinaryType
Конвертер бинарного типа.
Используется для преобразования бинарных данных между PHP и типами баз данных.
- Cake\Database\Type
-
Cake\Database\Type\BinaryType
Подробное описание методов
toDatabasesource public
toDatabase( string|resource $value , Cake\Database\Driver $driver )
Преобразование бинарных данных в формат базы данных.
Бинарные данные не изменяются перед вставкой в базу данных. Так как PDO будет обрабатывать чтение дескрипторов файлов.
Параметры
- string|resource
$value - Значение для преобразования.
-
Cake\Database\Driver$driver - Экземпляр драйвера для преобразования.
Возвращает
string|resourcestring|resource
Переопределяет
Cake\Database\Type::toDatabase() toPHPsource public
toPHP( null|string|resource $value , Cake\Database\Driver $driver )
Преобразование бинарных данных в дескрипторы ресурсов.
Параметры
- null|string|resource
$value - Значение для преобразования.
-
Cake\Database\Driver$driver - Экземпляр драйвера для преобразования.
Возвращает
resource|nullresource|null
Исключения
Cake\Core\Exception\Exception\Cake\Core\Exception\Exception
Переопределяет
Cake\Database\Type::toPHP() toStatementsource public
toStatement( mixed $value , Cake\Database\Driver $driver )
Получение правильного типа привязки PDO для бинарных данных.
Параметры
- mixed
$value - Связываемое значение.
-
Cake\Database\Driver$driver - Драйвер.
Возвращает
integerint
Переопределяет
Cake\Database\Type::toStatement() Наследованные методы от Cake\Database\Type
__constructsource public
__construct( string $name null )
Конструктор
Параметры
- string
$nameнеобязательно null - Имя, идентифицирующее этот тип
_basicTypeCastsource protected
_basicTypeCast( mixed $value )
Проверяет, является ли этот тип базовым и может ли он быть преобразован с помощью обратного вызова. Если это так, возвращает преобразованное значение
Устарело
3.1 Все типы теперь должны быть отдельным классомПараметры
- mixed
$value - значение, подлежащее преобразованию в PHP-эквивалент
Возвращает
mixedmixed
boolvalsource public static
boolval( mixed $value )
Конвертер типов для логических значений.
Преобразует строковые true/false в булевые.
Устарело
3.1.8 Этот метод больше не используется.Параметры
- mixed
$value - Значение для преобразования в булевое значение.
Возвращает
booleanbool
buildsource public static
build( string $name )
Возвращает объект Type, способный преобразовывать тип, идентифицированный по $name
Параметры
- string
$name - идентификатор типа
Возвращает
Cake\Database\TypeType
Исключения
InvalidArgumentExceptionЕсли идентификатор типа неизвестен
clearsource public static
clear( )
Очищает все созданные экземпляры и сопоставленные классы типов, полезно для тестирования
getBaseTypesource public
getBaseType( )
Возвращает имя базового типа, от которого унаследован данный класс. Это полезно при расширении базового типа для добавления дополнительной функциональности, но при этом хочется, чтобы остальная часть фреймворка использовала те же предположения о базовом типе, от которого он унаследован.
Возвращает
stringstring
getNamesource public
getName( )
Возвращает имя идентификатора типа для данного объекта
Возвращает
stringstring
mapsource public static
map( string|array|Cake\Database\Type|null $type null , string|null $className null )
Регистрирует новый идентификатор типа и сопоставляет его с полным именем класса с пространством имён. Если вызвана без аргументов, она вернёт текущую карту типов. Если $className опущен, она вернёт сопоставленный класс для $type.
Параметры
- string|array|
Cake\Database\Type|null$typeнеобязательно null - если строка имя типа для сопоставления, если массив список массивов для сопоставления
- string|null
$classNameнеобязательно null - Имя класса для регистрации.
Возвращает
array|string|nullесли $type равен null, то массив с текущей картой; если $className равен null, строка настроенного имени класса для данного $type; в противном случае null
marshalsource public
marshal( mixed $value )
Преобразует плоские данные в объекты PHP.
Наиболее полезно для преобразования данных запроса в объекты PHP, которые имеют смысл для остальных слоёв ORM/базы данных.
Параметры
- mixed
$value - Значение для преобразования.
Возвращает
mixedПреобразованное значение.
newIdsource public
newId( )
Генерирует новое значение первичного ключа для данного типа.
Этот метод может использоваться типами для создания новых значений первичного ключа при вставке сущностей.
Возвращает
mixedНовое значение первичного ключа.
См. также
Cake\Database\Type\UuidTypesetsource public static
set( string $name , Cake\Database\Type $instance )
Возвращает объект Type, способный преобразовывать тип, идентифицированный по $name
Параметры
- string
$name - Идентификатор типа, который вы хотите установить.
-
Cake\Database\Type$instance - Экземпляр типа, который вы хотите установить.
strvalsource public static
strval( mixed $value )
Конвертер типов для строковых значений.
Преобразует значения в строки
Устарело
3.1.8 Этот метод больше не используется.Параметры
- mixed
$value - Значение для преобразования в строку.
Возвращает
booleanbool
Свойства, унаследованные от Cake\Database\Type
$_basicTypessource
protected static массив
Список основных типов сопоставлений, используемых для избежания необходимости создания экземпляра класса для преобразования этих типов.
Устарело
3.1 Все типы теперь будут использовать определенный класс[
'string' => ['callback' => ['\Cake\Database\Type', 'strval']],
'text' => ['callback' => ['\Cake\Database\Type', 'strval']],
'boolean' => [
'callback' => ['\Cake\Database\Type', 'boolval'],
'pdo' => PDO::PARAM_BOOL
],
] $_builtTypessource
protected static массив
Содержит карту экземпляров объектов типа, которые будут повторно использоваться при необходимости.
[]
$_typessource
protected static массив
Список поддерживаемых типов базы данных. В качестве ключа используется удобочитаемый идентификатор, а в качестве значения - полное имя пространства имен класса, представляющее класс, который будет выполнять фактическое преобразование типов.
[
'biginteger' => 'Cake\Database\Type\IntegerType',
'binary' => 'Cake\Database\Type\BinaryType',
'boolean' => 'Cake\Database\Type\BoolType',
'date' => 'Cake\Database\Type\DateType',
'datetime' => 'Cake\Database\Type\DateTimeType',
'decimal' => 'Cake\Database\Type\FloatType',
'float' => 'Cake\Database\Type\FloatType',
'integer' => 'Cake\Database\Type\IntegerType',
'string' => 'Cake\Database\Type\StringType',
'text' => 'Cake\Database\Type\StringType',
'time' => 'Cake\Database\Type\TimeType',
'timestamp' => 'Cake\Database\Type\DateTimeType',
'uuid' => 'Cake\Database\Type\UuidType',
]
© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.Database.Type.BinaryType.html