php 类型有哪些

php 类型有哪些
最新回答
反撩

2026-10-24 13:24:24

PHP 中的数据类型可分为三大类:基础类型、复合类型和特殊类型,每种类型在存储方式和操作规则上各有特点。以下是详细分类及说明:

一、基础类型
  1. 布尔型 (bool)

    表示逻辑值:true 或 false。

    常用于条件判断(如 if 语句)。

  2. 整型 (int)

    表示整数(如 42、-10)。

    范围取决于系统(32 位或 64 位)。

  3. 浮点型 (float)

    表示小数或科学计数法数值(如 3.14、2.5e3)。

    存在精度问题,比较时需谨慎。

  4. 字符串型 (string)

    由字符组成的序列(如 "Hello")。

    支持单引号、双引号及定界符(<<<)定义。

二、复合类型
  1. 数组 (array)

    有序键值对集合,键可以是整数或字符串(如 ['a' => 1, 'b' => 2])。

    支持索引数组和关联数组。

  2. 对象 (object)

    类的实例,包含属性和方法(如 new stdClass())。

    需通过 class 定义类结构。

  3. 资源 (resource)

    引用外部资源(如文件句柄、数据库连接)。

    需通过特定函数(如 fopen())创建。

三、特殊类型
  1. NULL

    表示变量无值(如 $var = null;)。

    仅有一个值 null,区分大小写。

  2. 类型声明 (declare)

    通过 declare(strict_types=1) 强制类型检查(PHP 7+)。

    影响函数参数和返回值的类型约束。

  3. 匿名函数 (callable)

    可调用的函数或方法(如 function() { echo 'Hi'; })。

    常用于回调或闭包。

四、类型转换与检查
  1. 隐式转换

    PHP 自动转换类型以满足操作(如 "5" + 2 结果为 7)。

    字符串转数字时忽略前导空格和无效字符。

  2. 显式转换

    使用 (int)、(string) 等强制转换(如 $num = (float) "3.14";)。

    或通过函数(如 intval()、strval())。

  3. 类型检查函数

    检测变量类型:

    is_bool()、is_int()、is_float()、is_string()

    is_array()、is_object()、is_null()

    is_callable()(检查是否可调用)

关键点总结
  • 基础类型直接存储简单值,复合类型存储复杂结构,特殊类型处理特定场景。
  • 类型转换需注意隐式规则(如字符串转数字的截断行为)。
  • 使用类型检查函数可避免运行时错误,尤其在处理外部输入时。

通过理解这些类型及其操作,可以更高效地编写健壮的 PHP 代码。