Encapsulates all conversion functions for values coming from database into PHP and going from PHP into database.
array
List of basic type mappings, used to avoid having to instantiate a class for doing conversion on these.
$_name
protected string|null
string[]|Cake\Database\Type[]
List of supported database types. A human readable identifier is used as key and a complete namespaced class name as value representing the class that will do actual type conversions.
Returns an array that can be used to describe the internal state of this object.
Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value
Registers a new type identifier and maps it to a fully namespaced classname, If called with no arguments it will return current types map array If $className is omitted it will return mapped class for $type
__construct( string|null $name null )
Constructor
$name
optional null __debugInfo( )
Returns an array that can be used to describe the internal state of this object.
_basicTypeCast( mixed $value )
Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value
$value
boolval( mixed $value )
Type converter for boolean values.
Will convert string true/false into booleans.
$value
build( string $name )
Returns a Type object capable of converting a type identified by name.
$name
Cake\Database\Type
buildAll( )
Returns an arrays with all the mapped type objects, indexed by name.
clear( )
Clears out all created instances and mapped types classes, useful for testing
getBaseType( )
Returns the base type name that this class is inheriting.
Cake\Database\TypeInterface::getBaseType()
getName( )
Returns type identifier name for this object.
Cake\Database\TypeInterface::getName()
map( string|string[]|Cake\Database\Type[]|null $type null , string|Cake\Database\Type|null $className null )
Registers a new type identifier and maps it to a fully namespaced classname, If called with no arguments it will return current types map array If $className is omitted it will return mapped class for $type
Deprecated: The usage of $type as \Cake\Database\Type[] is deprecated. Please always use string[] if you pass an array as first argument.
Cake\Database\Type[]
|null $type
optional null Cake\Database\Type
|null $className
optional null If $type is null then array with current map, if $className is null string configured class name for give $type, null otherwise
marshal( mixed $value )
Marshalls flat data into PHP objects.
$value
Cake\Database\TypeInterface::marshal()
newId( )
Generate a new primary key value for a given type.
Cake\Database\TypeInterface::newId()
set( string $name , Cake\Database\Type $instance )
Returns a Type object capable of converting a type identified by $name
$name
Cake\Database\Type
$instance
strval( mixed $value )
Type converter for string values.
Will convert values into strings
$value
toDatabase( mixed $value , Cake\Database\Driver $driver )
Casts given value from a PHP type to one acceptable by a database.
$value
Cake\Database\Driver
$driver
Cake\Database\TypeInterface::toDatabase()
toPHP( mixed $value , Cake\Database\Driver $driver )
Casts given value from a database type to PHP equivalent
$value
Cake\Database\Driver
$driver
Cake\Database\TypeInterface::toPHP()
toStatement( mixed $value , Cake\Database\Driver $driver )
Casts given value to its Statement equivalent.
$value
Cake\Database\Driver
$driver
Cake\Database\TypeInterface::toStatement()
protected static array
List of basic type mappings, used to avoid having to instantiate a class for doing conversion on these.
[ 'string' => ['callback' => ['\Cake\Database\Type', 'strval']], 'text' => ['callback' => ['\Cake\Database\Type', 'strval']], 'boolean' => [ 'callback' => ['\Cake\Database\Type', 'boolval'], 'pdo' => PDO::PARAM_BOOL ], ]
protected static Cake\Database\Type[]
Contains a map of type object instances to be reused if needed.
[]
protected static string[]|Cake\Database\Type[]
List of supported database types. A human readable identifier is used as key and a complete namespaced class name as value representing the class that will do actual type conversions.
[ 'tinyinteger' => 'Cake\Database\Type\IntegerType', 'smallinteger' => 'Cake\Database\Type\IntegerType', 'integer' => 'Cake\Database\Type\IntegerType', '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\DecimalType', 'float' => 'Cake\Database\Type\FloatType', 'json' => 'Cake\Database\Type\JsonType', '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–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.html