类 TypeFactory
用于构建数据库类型类的工厂。
命名空间: Cake\Database
属性概述
-
$_builtTypes protected static
arrayCake\Database\TypeInterface>
包含一个类型对象实例映射,以便在需要时重用。
-
$_types protected static
array<string, string>
支持的数据库类型列表。一个人类可读的标识符用作键,一个完整的命名空间类名用作值,代表将执行实际类型转换的类。
方法概述
-
build() public static
返回一个能够转换由名称标识的类型的 Type 对象。
-
buildAll() public static
返回包含所有映射类型对象的数组,按名称索引。
-
clear() public static
清除所有创建的实例和映射类型类,在测试时很有用。
-
getMap() public static
获取给定类型或映射数组的映射类名。
-
map() public static
注册一个新的类型标识符并将其映射到一个完整的命名空间类名。
-
set() public static
设置能够转换由 $name 标识的类型的 TypeInterface 实例。
-
setMap() public static
设置类型到类名映射。
方法详情
build() ¶ public static
build(string $name): Cake\Database\TypeInterface
返回一个能够转换由名称标识的类型的 Type 对象。
参数
-
string
$name 类型标识符
返回
Cake\Database\TypeInterface
抛出
InvalidArgumentException
如果类型标识符未知
buildAll() ¶ public static
buildAll(): arrayCake\Database\TypeInterface>
返回包含所有映射类型对象的数组,按名称索引。
返回
arrayCake\Database\TypeInterface>
getMap() ¶ public static
getMap(string|null $type = null): array<string, class-stringCake\Database\TypeInterface>>|string|null
获取给定类型或映射数组的映射类名。
参数
-
string|null
$type optional 要获取映射类的类型名称,或为获取映射数组提供 null。
返回
array<string, class-stringCake\Database\TypeInterface>>|string|null
map() ¶ public static
map(string $type, string $className): void
注册一个新的类型标识符并将其映射到一个完整的命名空间类名。
参数
-
string
$type 要映射的类型名称。
-
string
$className 要注册的类名。
返回
void
set() ¶ public static
set(string $name, Cake\Database\TypeInterface $instance): void
设置能够转换由 $name 标识的类型的 TypeInterface 实例。
参数
-
string
$name 您要设置的类型标识符。
-
Cake\Database\TypeInterface
$instance 您要设置的类型实例。
返回
void
setMap() ¶ public static
setMap(array<string, string> $map): void
设置类型到类名映射。
参数
-
array<string, string>
$map 要映射的类型列表。
返回
void