Class DateTimeType
Datetime type converter.
Use to convert datetime instances to strings & back.
- Cake\Database\Type implements Cake\Database\TypeInterface
-
Cake\Database\Type\DateTimeType implements Cake\Database\TypeInterface
Direct Subclasses
Properties summary
-
$_className
protectedstring
The classname to use when creating objects. -
$_datetimeInstance
protectedDateTime
An instance of the configured dateTimeClass, used to quickly generate new instances without calling the constructor.
-
$_format
protectedstring
String format to use for DateTime parsing -
$_localeFormat
protectedstring|array|integer
The date format to use for parsing incoming dates for marshalling. -
$_name
protectedstring|null
Identifier name for this type -
$_useLocaleParser
protectedboolean
Whether dates should be parsed using a locale aware parser when marshalling string inputs.
-
$dateTimeClass
public staticstring
The class to use for representing date objects
Inherited Properties
Method Summary
-
__construct() public
Constructor -
_parseValue() protected
Converts a string into a DateTime object after parsing it using the locale aware parser with the specified format.
-
_setClassName() protected
Set the classname to use when building objects. -
marshal() public
Convert request data into a datetime object. -
setLocaleFormat() public
Sets the format string to use for parsing dates in this class. The formats that are accepted are documented in the
Cake\I18n\Time::parseDateTime()
function. -
toDatabase() public
Convert DateTime instance into strings. -
toPHP() public
Convert strings into DateTime instances. -
toStatement() public
Casts given value to Statement equivalent -
useImmutable() public
Change the preferred class name to the FrozenTime implementation. -
useLocaleParser() public
Sets whether or not to parse dates passed to the marshal() function by using a locale aware parser.
-
useMutable() public
Change the preferred class name to the mutable Time implementation.
Method Detail
__construct() public ¶
__construct( string|null $name = null )
Constructor
Parameters
- string|null $name optional null
- The name identifying this type
Overrides
_parseValue() protected ¶
_parseValue( string $value )
Converts a string into a DateTime object after parsing it using the locale aware parser with the specified format.
Parameters
- string $value
- The value to parse and convert to an object.
Returns
Cake\I18n\Time
|null_setClassName() protected ¶
_setClassName( string $class , string $fallback )
Set the classname to use when building objects.
Parameters
- string $class
- The classname to use.
- string $fallback
- The classname to use when the preferred class does not exist.
marshal() public ¶
marshal( mixed $value )
Convert request data into a datetime object.
Parameters
- mixed $value
- Request data
Returns
Cake\I18n\Time
|DateTimeOverrides
Implementation of
setLocaleFormat() public ¶
setLocaleFormat( string|array $format )
Sets the format string to use for parsing dates in this class. The formats
that are accepted are documented in the Cake\I18n\Time::parseDateTime()
function.
Parameters
- string|array $format
- The format in which the string are passed.
Returns
$this
See
toDatabase() public ¶
toDatabase( string|integer|DateTime $value , Cake\Database\Driver
$driver )
Convert DateTime instance into strings.
Parameters
- string|integer|DateTime $value
- The value to convert.
-
Cake\Database\Driver
$driver - The driver instance to convert with.
Returns
Overrides
Implementation of
toPHP() public ¶
toPHP( string $value , Cake\Database\Driver
$driver )
Convert strings into DateTime instances.
Parameters
- string $value
- The value to convert.
-
Cake\Database\Driver
$driver - The driver instance to convert with.
Returns
Cake\I18n\Time
|DateTimeOverrides
Implementation of
toStatement() public ¶
toStatement( mixed $value , Cake\Database\Driver
$driver )
Casts given value to Statement equivalent
Parameters
- mixed $value
- value to be converted to PDO statement
-
Cake\Database\Driver
$driver - object from which database preferences and configuration will be extracted
Returns
Overrides
Implementation of
useImmutable() public ¶
useImmutable( )
Change the preferred class name to the FrozenTime implementation.
Returns
$this
useLocaleParser() public ¶
useLocaleParser( boolean $enable = true )
Sets whether or not to parse dates passed to the marshal() function by using a locale aware parser.
Parameters
- boolean $enable optional true
- Whether or not to enable
Returns
$this
useMutable() public ¶
useMutable( )
Change the preferred class name to the mutable Time implementation.
Returns
$this
Methods inherited from Cake\Database\Type
_basicTypeCast() protected deprecated ¶
_basicTypeCast( mixed $value )
Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value
Deprecated
Parameters
- mixed $value
- value to be converted to PHP equivalent
Returns
boolval() public static deprecated ¶
boolval( mixed $value )
Type converter for boolean values.
Will convert string true/false into booleans.
Deprecated
Parameters
- mixed $value
- The value to convert to a boolean.
Returns
build() public static ¶
build( string $name )
Returns a Type object capable of converting a type identified by $name
Parameters
- string $name
- type identifier
Returns
Throws
If type identifier is unknown
buildAll() public static ¶
buildAll( )
Returns an arrays with all the mapped type objects, indexed by name
Returns
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.
Returns
The base type name that this class is inheriting.
Implementation of
getName() public ¶
getName( )
Returns type identifier name for this object.
Returns
The type identifier name for this object.
Implementation of
map() public static ¶
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
Parameters
-
string|array|
Cake\Database\Type
|null $type optional null - if string name of type to map, if array list of arrays to be mapped
- string|null $className optional null
- The classname to register.
Returns
if $type is null then array with current map, if $className is null string configured class name for give $type, null otherwise
newId() public ¶
newId( )
Generate a new primary key value for a given type.
Returns
A new primary key value.
Implementation of
set() public static ¶
set( string $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.
Properties detail
$_datetimeInstance ¶
An instance of the configured dateTimeClass, used to quickly generate new instances without calling the constructor.
$_localeFormat ¶
The date format to use for parsing incoming dates for marshalling.
$_useLocaleParser ¶
Whether dates should be parsed using a locale aware parser when marshalling string inputs.
false
$dateTimeClass ¶
The class to use for representing date objects
This property can only be used before an instance of this type
class is constructed. After that use useMutable()
or useImmutable()
instead.
Deprecated
'Cake\I18n\Time'