Class TypeMap
Implements default and single-use mappings for columns to their associated types
Property Summary
- 
        $_defaults protectedarrayAssociative array with the default fields and the related types this query might contain. 
- 
        $_types protectedarrayAssociative array with the fields and the related types that override defaults this query might contain 
Method Summary
- 
          __construct() publicCreates an instance with the given defaults 
- 
          addDefaults() publicAdd additional default types into the type map. 
- 
          defaults() publicConfigures a map of default fields and their associated types to be used as the default list of types for every function in this class with a $types param. Useful to avoid repetition when calling the same functions using the same fields and types. 
- 
          toArray() publicReturns an array of all types mapped types 
- 
          type() publicReturns the type of the given column. If there is no single use type is configured, the column type will be looked for inside the default mapping. If neither exist, null will be returned. 
- 
          types() publicSets a map of fields and their associated types for single-use. 
Method Detail
__construct() ¶ public
__construct(array $defaults = [])Creates an instance with the given defaults
Parameters
- 
                array$defaults optional
- The defaults to use. 
addDefaults() ¶ public
addDefaults(array $types): voidAdd additional default types into the type map.
If a key already exists it will not be overwritten.
Parameters
- 
                array$types
- The additional types to add. 
Returns
voiddefaults() ¶ public
defaults(array|null $defaults = null): $this|arrayConfigures a map of default fields and their associated types to be used as the default list of types for every function in this class with a $types param. Useful to avoid repetition when calling the same functions using the same fields and types.
If called with no arguments it will return the currently configured types.
Example
$query->defaults(['created' => 'datetime', 'is_visible' => 'boolean']);This method will replace all the existing type maps with the ones provided.
Parameters
- 
                array|null$defaults optional
- associative array where keys are field names and values are the correspondent type. 
Returns
$this|arraytype() ¶ public
type(string $column): null|stringReturns the type of the given column. If there is no single use type is configured, the column type will be looked for inside the default mapping. If neither exist, null will be returned.
Parameters
- 
                string$column
- The type for a given column 
Returns
null|stringtypes() ¶ public
types(array|null $types = null): $this|arraySets a map of fields and their associated types for single-use.
If called with no arguments it will return the currently configured types.
Example
$query->types(['created' => 'time']);This method will replace all the existing type maps with the ones provided.
Parameters
- 
                array|null$types optional
- associative array where keys are field names and values are the correspondent type. 
Returns
$this|arrayProperty Detail
$_defaults ¶ protected
Associative array with the default fields and the related types this query might contain.
Used to avoid repetition when calling multiple functions inside this class that may require a custom type for a specific field.
Type
array$_types ¶ protected
Associative array with the fields and the related types that override defaults this query might contain
Used to avoid repetition when calling multiple functions inside this class that may require a custom type for a specific field.
Type
array