以下是 PHP 中常见的数据类型及其使用范围、大小和默认值的表格:
数据类型 | 使用范围/描述 | 大小 | 默认值 |
---|---|---|---|
标量类型 | |||
integer | 整型,范围取决于系统(32 位系统:-2147483648 到 2147483647;64 位系统:更大) | 4 字节(32 位)或 8 字节(64 位) | 0 |
float | 浮点型(双精度),范围约为 ±1.8e308,精度约为 15 位小数 | 8 字节 | 0.0 |
string | 字符串,最大长度取决于可用内存 | 可变 | ""(空字符串) |
boolean | 布尔型,值为 true 或 false | 1 字节 | false |
复合类型 | |||
array | 数组,可以存储多个值(键值对) | 可变 | [](空数组) |
object | 对象,存储类的实例 | 可变 | null |
特殊类型 | |||
null | 表示变量没有值 | 不占用空间 | null |
resource | 资源类型,用于存储外部资源(如数据库连接、文件句柄等) | 可变 | null |
callable | 可调用类型,表示函数或方法 | 可变 | null |
说明:
integer:
在 32 位系统中,范围为 -2147483648 到 2147483647。
在 64 位系统中,范围为 -9223372036854775808 到 9223372036854775807。
超出范围时会自动转换为 float。
float:
也称为 double,是双精度浮点数。
精度约为 15 位小数。
string:
字符串长度仅受可用内存限制。
可以是单引号(
'
)或双引号("
)括起来的文本。
boolean:
只有两个值:
true
和false
。在条件判断中,
0
、""
、null
、false
等会被视为false
。
array:
可以存储多个值,键可以是整数或字符串。
默认是索引数组(键为整数),也可以是关联数组(键为字符串)。
object:
用于存储类的实例。
通过
new
关键字创建。
null:
表示变量没有值。
未初始化的变量默认值为
null
。
resource:
用于存储外部资源(如数据库连接、文件句柄等)。
由 PHP 内部函数创建和管理。
callable:
表示可调用的函数或方法。
可以是函数名、类方法(
ClassName::methodName
)或匿名函数(Closure
)。
示例:
$int = 42; // integer $float = 3.14; // float $string = "Hello"; // string $bool = true; // boolean $array = [1, 2, 3]; // array $object = new stdClass(); // object $null = null; // null $resource = fopen("file.txt", "r"); // resource $callable = function() { return "Hello"; }; // callable
PHP 是一种弱类型语言,变量的数据类型会根据上下文自动转换。如果需要严格类型检查,可以使用 declare(strict_types=1);
开启严格模式。
评论