CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (Github)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C CakePHP 3.10 Red Velvet API

  • Project:
    • CakePHP
      • CakePHP
      • Authentication
      • Authorization
      • Chronos
      • Elastic Search
      • Queue
  • Version:
    • 3.10
      • 5.2
      • 5.1
      • 5.0
      • 4.6
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Namespaces

  • Global
  • Cake
    • Auth
    • Cache
    • Collection
    • Command
    • Console
    • Controller
    • Core
    • Database
      • Dialect
      • Driver
      • Exception
      • Expression
      • Log
      • Retry
      • Schema
      • Statement
      • Type
    • Datasource
    • Error
    • Event
    • Filesystem
    • Form
    • Http
    • I18n
    • Log
    • Mailer
    • Network
    • ORM
    • Routing
    • Shell
    • TestSuite
    • Utility
    • Validation
    • View

Class Type

Encapsulates all conversion functions for values coming from database into PHP and going from PHP into database.

Namespace: Cake\Database

Property Summary

  • $_basicTypes protected static deprecated
    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.

Method Summary

  • __construct() public

    Constructor

  • __debugInfo() public

    Returns an array that can be used to describe the internal state of this object.

  • _basicTypeCast() protected deprecated

    Checks whether this type is a basic one and can be converted using a callback If it is, returns converted value

  • boolval() public static deprecated

    Type converter for boolean values.

  • build() public static

    Returns a Type object capable of converting a type identified by name.

  • buildAll() public static

    Returns an arrays with all the mapped type objects, indexed by name.

  • clear() public static

    Clears out all created instances and mapped types classes, useful for testing

  • getBaseType() public

    Returns the base type name that this class is inheriting.

  • getMap() public static

    Get mapped class name or instance for type(s).

  • getName() public

    Returns type identifier name for this object.

  • 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

  • marshal() public

    Marshals flat data into PHP objects.

  • newId() public

    Generate a new primary key value for a given type.

  • set() public static

    Returns a Type object capable of converting a type identified by $name

  • setMap() public static

    Set type to classname mapping.

  • strval() public static deprecated

    Type converter for string values.

  • toDatabase() public

    Casts given value from a PHP type to one acceptable by a database.

  • toPHP() public

    Casts given value from a database type to PHP equivalent

  • toStatement() public

    Casts given value to its Statement equivalent.

Method Detail

__construct() ¶ public

__construct(string|null $name = null)

Constructor

Parameters
string|null $name optional

The name identifying this type

__debugInfo() ¶ public

__debugInfo(): array

Returns an array that can be used to describe the internal state of this object.

Returns
array

_basicTypeCast() ¶ protected

_basicTypeCast(mixed $value): mixed

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

boolval() ¶ public static

boolval(mixed $value): bool

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(string $name): Cake\Database\Type

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(): array

Returns an arrays with all the mapped type objects, indexed by name.

Returns
array

clear() ¶ public static

clear(): void

Clears out all created instances and mapped types classes, useful for testing

Returns
void

getBaseType() ¶ public

getBaseType(): string

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

getMap() ¶ public static

getMap(string|null $type = null): array|string|Cake\Database\TypeInterface|null

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

getName() ¶ public

getName(): string

Returns type identifier name for this object.

Returns
string

map() ¶ public static

map(string|string[]|Cake\Database\Type[]|null $type = null, string|Cake\Database\Type|null $className = null): array|string|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 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

marshal() ¶ public

marshal(mixed $value): mixed

Marshals flat data into PHP objects.

Most useful for converting request data into PHP objects, that make sense for the rest of the ORM/Database layers.

Parameters
mixed $value
Returns
mixed

newId() ¶ public

newId(): mixed

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

set() ¶ public static

set(string $name, Cake\Database\Type $instance): void

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.

Returns
void

setMap() ¶ public static

setMap(string[] $map): void

Set type to classname mapping.

Parameters
string[] $map

List of types to be mapped.

Returns
void

strval() ¶ public static

strval(mixed $value): string

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): mixed

Casts given value from a PHP type to one acceptable by a database.

Parameters
mixed $value
Cake\Database\Driver $driver
Returns
mixed

toPHP() ¶ public

toPHP(mixed $value, Cake\Database\Driver $driver): mixed

Casts given value from a database type to PHP equivalent

Parameters
mixed $value

Value to be converted to PHP equivalent

Cake\Database\Driver $driver

Object from which database preferences and configuration will be extracted

Returns
mixed

toStatement() ¶ public

toStatement(mixed $value, Cake\Database\Driver $driver): mixed

Casts given value to its Statement equivalent.

Parameters
mixed $value
Cake\Database\Driver $driver
Returns
mixed

Property Detail

$_basicTypes ¶ protected static deprecated

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

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[]
OpenHub
Pingping
Linode
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (Github)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs