On this page
Class FloatType
Float type converter.
Use to convert float/decimal data between PHP and the database types.
Properties summary
-
$_basicTypes protected static
array
List of basic type mappings, used to avoid having to instantiate a class for doing conversion on these.
-
$_builtTypes protected static
\Cake\Database\Type[]
Contains a map of type object instances to be reused if needed.
-
$_name protected
string|null
Identifier name for this type.
-
$_types 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.
-
$_useLocaleParser protected
bool
Whether numbers should be parsed using a locale aware parser when marshalling string inputs.
-
$numberClass public static
string
The class to use for representing number objects
Method Summary
-
__debugInfo() public
Returns an array that can be used to describe the internal state of this object.
-
_basicTypeCast() protected
Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value
-
_parseValue() protected
Converts a string into a float point after parsing it using the locale aware parser.
-
map() public static
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
-
useLocaleParser() public
Sets whether or not to parse numbers passed to the marshal() function by using a locale aware parser.
Method Detail
__construct() public
__construct(mixed $name)
Constructor.
(This method is declared here again so that the inheritance from Cake\Database\Type can be removed in the future.)
Parameters
string|null
$name optional-
The name identifying this type
__debugInfo() public
__debugInfo()
Returns an array that can be used to describe the internal state of this object.
Returns
array
_basicTypeCast() protected
_basicTypeCast(mixed $value)
Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value
Parameters
mixed
$value-
Value to be converted to PHP equivalent
Returns
mixed
_parseValue() protected
_parseValue(mixed $value)
Converts a string into a float point after parsing it using the locale aware parser.
Parameters
string
$value-
The value to parse and convert to an float.
Returns
float
boolval() public static
boolval(mixed $value)
Type converter for boolean values.
Will convert string true/false into booleans.
Parameters
mixed
$value-
The value to convert to a boolean.
Returns
bool
build() public static
build(mixed $name)
Returns a Type object capable of converting a type identified by name.
Parameters
string
$name-
type identifier
Returns
\Cake\Database\Type
Throws
InvalidArgumentException
If type identifier is unknown
buildAll() public static
buildAll()
Returns an arrays with all the mapped type objects, indexed by name.
Returns
array
clear() public static
clear()
Clears out all created instances and mapped types classes, useful for testing
getBaseType() public
getBaseType()
Returns the base type name that this class is inheriting.
This is useful when extending base type for adding extra functionality, but still want the rest of the framework to use the same assumptions it would do about the base type it inherits from.
Returns
string
The base type name that this class is inheriting.
getMap() public static
getMap(mixed $type)
Get mapped class name or instance for type(s).
Parameters
string|null
$type optional-
Type name to get mapped class for or null to get map array.
Returns
array|string|\Cake\Database\TypeInterface|null
Configured class name or instance for give $type or map array.
getName() public
getName()
Returns type identifier name for this object.
Returns
string
The type identifier name for this object.
manyToPHP() public
manyToPHP(array $values, array $fields, \Cake\Database\Driver $driver)
Returns an array of the values converted to the PHP representation of this type.
Parameters
array
$values-
The original array of values containing the fields to be casted
string[]
$fields-
The field keys to cast
\Cake\Database\Driver
$driver-
Object from which database preferences and configuration will be extracted.
Returns
float[]
map() public static
map(mixed $type, mixed $className)
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 3.6.2:
- The usage of $type as string[]|\Cake\Database\Type[] is deprecated. Use Type::setMap() with string[] instead.
- Passing $className as \Cake\Database\Type instance is deprecated, use class name string only.
- Using this method as getter is deprecated. Use Type::getMap() instead.
Parameters
string|string[]|\Cake\Database\Type[]|null
$type optional-
If string name of type to map, if array list of arrays to be mapped
string|\Cake\Database\Type|null
$className optional-
The classname or object instance of it to register.
Returns
array|string|null
If $type is null then array with current map, if $className is null string configured class name for give $type, null otherwise
marshal() public
marshal(mixed $value)
Marshals request data into PHP floats.
Parameters
mixed
$value-
The value to convert.
Returns
float|string|null
Converted value.
newId() public
newId()
Generate a new primary key value for a given type.
This method can be used by types to create new primary key values when entities are inserted.
Returns
mixed
A new primary key value.
See Also
set() public static
set(mixed $name, \Cake\Database\Type $instance)
Returns a Type object capable of converting a type identified by $name
Parameters
string
$name-
The type identifier you want to set.
\Cake\Database\Type
$instance-
The type instance you want to set.
setMap() public static
setMap(array $map)
Set type to classname mapping.
Parameters
string[]
$map-
List of types to be mapped.
strval() public static
strval(mixed $value)
Type converter for string values.
Will convert values into strings
Parameters
mixed
$value-
The value to convert to a string.
Returns
string
toDatabase() public
toDatabase(mixed $value, \Cake\Database\Driver $driver)
Convert integer data into the database format.
Parameters
string|resource
$value-
The value to convert.
\Cake\Database\Driver
$driver-
The driver instance to convert with.
Returns
float|null
toPHP() public
toPHP(mixed $value, \Cake\Database\Driver $driver)
Convert float values to PHP integers
Parameters
resource|string|null
$value-
The value to convert.
\Cake\Database\Driver
$driver-
The driver instance to convert with.
Returns
float|null
Throws
Cake\Core\Exception\Exception
toStatement() public
toStatement(mixed $value, \Cake\Database\Driver $driver)
Get the correct PDO binding type for integer data.
Parameters
mixed
$value-
The value being bound.
\Cake\Database\Driver
$driver-
The driver.
Returns
int
useLocaleParser() public
useLocaleParser(mixed $enable)
Sets whether or not to parse numbers passed to the marshal() function by using a locale aware parser.
Parameters
bool
$enable optional-
Whether or not to enable
Returns
$this
Property Detail
$_basicTypes protected static
List of basic type mappings, used to avoid having to instantiate a class for doing conversion on these.
Type
array
$_builtTypes protected static
Contains a map of type object instances to be reused if needed.
Type
\Cake\Database\Type[]
$_name protected
Identifier name for this type.
(This property is declared here again so that the inheritance from Cake\Database\Type can be removed in the future.)
Type
string|null
$_types protected static
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.
Type
string[]|\Cake\Database\Type[]
$_useLocaleParser protected
Whether numbers should be parsed using a locale aware parser when marshalling string inputs.
Type
bool
$numberClass public static
The class to use for representing number objects
Type
string
© 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.9/class-Cake.Database.Type.FloatType.html