1.标量类型之整数(int)类型
类型 | 范围 |
int | PHP_INT_MIN ≤ n ≤ PHP_INT_MAX |
进制 | 描述 |
二进制 | 以 0B (零和大写字母B) 或 0b (零和小写字母b) 开头,后续只能包含 数字(0~1)。 |
八进制 | 以 0 (零) 或 0O (零和大写字母O) 或 0o (零和小写字母o) 开头,后续只能包含 数字(0~7)。 |
十六进制 | 以 0X (零和大写字母X) 或 0x (零和小写字母x) 开头,后续只能包含 数字(0~9)、字母(A~F 和 a~f)。字母(A~F 和 a~f) 表示数字 10 到 15。 |
为了提高数值的可读性,下划线(_
)可以用作分隔符,解析时会被 PHP 解释器移除。
//作为千分位分隔符
1_000_000_000
2.标量类型之浮点(float)类型
类型 | 范围 |
float | ±PHP_FLOAT_MIN ≤ n ≤ ±PHP_FLOAT_MAX |
浮点类型还可以使用科学记数法来表示:一个数值(整数或浮点数)后跟一个大写或小写的字母 e
(表示乘以 10
),再跟一个前面的乘以 10
的多少次幂。
//十进制形式
5.12
//科学记数法形式
//注意:这是浮点数500.0,而不是整数500。
5e2
//注意:这是浮点数512.0,而不是整数512。
5.12e2
浮点类型还包括五个特殊的值:
值 | 描述 | 示例 |
INF (正无穷)
-INF (负无穷) | 任何无法表示的最大正数或最小负数。 | PHP_FLOAT_MAX * 2 // INF
-PHP_FLOAT_MAX * 2 // -INF |
0 (正零)
-0 (负零) | 任何无法表示的最小正数或最大负数。 | 1/INF // 0
-1/INF // -0 |
NAN (Not A Number,非数值) | 在数学运算中,当遇到一些无法运算的情况时,使用 NAN 表示这种情况,而不是抛出错误。 | INF/INF // NAN |
关于进制部分,与上述整数类型描述一样。
关于下划线部分,与上述整数类型描述一样。
3.标量类型之布尔(bool)类型
类型 | 这些值被 (bool) 转换以后都是 false |
int | 0 |
float | 0.0 、-0.0 |
bool | false |
string | 空字符串、"0" |
array | 空数组 |
null | null |
4.标量类型之字符串(string)类型
5.true类型和false类型
6.对象(object)类型
注意:object
不是所有类型的根类型。
7.类(Class)类型
8.接口(Interface)类型
9.Trait类型
10.callable类型
11.数组(array)类型
12.枚举(Enum)类型
13.联合(Union)类型
类型 | 描述 |
T1 | T2 | T3 | 联合类型(满足其一即可) |
14.交叉(Intersection)类型
类型 | 描述 |
T1 & T2 & T3 | 交叉类型(必须全部满足) |
15.mixed类型
类型 | 描述 |
mixed | object|resource|array|string|float|int|bool|null 的别名 |
16.iterable类型
类型 | 描述 |
iterable | Traversable|array 的别名 |
17.?T
类型
18.null类型
19.void类型
类型 | 描述 |
void | 只可以被用于函数的返回类型,表示函数没有返回值。 |
20.never类型
21.类型声明
类型声明支持:静态字段、实例字段、类常量、静态方法、实例方法。
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/php/phplang/38023.html