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
array
$_name
protected string
array
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.
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 _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|array|Cake\Database\Type|null $type null , string|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
Cake\Database\Type
|null $type
optional 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 array
Contains a map of type object instances to be reused if needed
[]
protected static array
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.
[ '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', 'integer' => 'Cake\Database\Type\IntegerType', '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–2017 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.4/class-Cake.Database.Type.html