简介

PHP 中的每个表达式都具有以下内置类型之一,具体取决于其值

PHP 是一种动态类型语言,这意味着默认情况下,无需指定变量的类型,因为这将在运行时确定。但是,可以使用 类型声明 静态地对语言的某些方面进行类型化。

类型限制了可以对它们执行的操作。但是,如果表达式/变量用于其类型不支持的操作,PHP 会尝试将值 类型转换 为支持该操作的类型。此过程取决于值使用时的上下文。有关更多信息,请参阅关于 类型转换 的部分。

提示

类型比较表 也很有用,因为其中包含不同类型值之间比较的各种示例。

注意: 可以通过使用 类型转换 强制表达式计算为特定类型。也可以通过对变量使用 settype() 函数来对其进行就地类型转换。

要检查 表达式 的值和类型,请使用 var_dump() 函数。要检索 表达式 的类型,请使用 get_debug_type() 函数。但是,要检查表达式是否为特定类型,请改用 is_type 函数。

<?php
$a_bool
= true; // 布尔值
$a_str = "foo"; // 字符串
$a_str2 = 'foo'; // 字符串
$an_int = 12; // 整数

echo get_debug_type($a_bool), "\n";
echo
get_debug_type($a_str), "\n";

// 如果这是一个整数,则将其加 4
if (is_int($an_int)) {
$an_int += 4;
}
var_dump($an_int);

// 如果 $a_bool 是字符串,则打印出来
if (is_string($a_bool)) {
echo
"字符串: $a_bool";
}
?>

以上示例在 PHP 8 中的输出

bool
string
int(16)

注意: 在 PHP 8.0.0 之前,get_debug_type() 函数不可用,可以使用 gettype() 函数来代替。但是,它不使用规范的类型名称。

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top