类型系统

PHP 使用一个名义类型系统,具有强行为子类型关系。子类型关系在编译时进行检查,而类型验证则在运行时动态检查。

PHP 的类型系统支持各种原子类型,这些类型可以组合在一起创建更复杂的类型。其中一些类型可以写成 类型声明.

原子类型

一些原子类型是内置类型,它们与语言紧密集成,无法用用户定义类型复制。

基本类型列表如下

复合类型

可以将多个原子类型组合成复合类型。PHP 允许以以下方式组合类型

  • 类类型的交集(接口和类名)。
  • 类型的并集。

交集类型

交集类型接受满足多个类类型声明的值,而不是一个。构成交集类型的各个类型由 & 符号连接。因此,由 TUV 类型组成的交集类型将写成 T&U&V

并集类型

并集类型接受多个不同类型的值,而不是一个。构成并集类型的各个类型由 | 符号连接。因此,由 TUV 类型组成的并集类型将写成 T|U|V。如果其中一个类型是交集类型,则需要用括号将其括起来才能写成 DNF: T|(X&Y)

类型别名

PHP 支持两种类型别名:mixediterable,分别对应于 并集类型 object|resource|array|string|float|int|bool|nullTraversable|array

注意: PHP 不支持用户定义的类型别名。

添加说明

用户贡献说明

此页面没有用户贡献的说明。
To Top