PHP 支持八种原始类型。
四种标题类型:
- boolean
- integer
- float(浮点数,还有[double])
- string
两种混合类型:
还有最后两种特殊类型:
这个手册同样为易读性原因而引入了一些伪类型:
你同样可以找到 double 类型的一些参考。考虑到 double 与 float 是一样的,因此这两种名称的存在只是由于一些历史原因。
变量的类型通常不是由程序员设置的;而是由 PHP 依赖于变量被使用的环境并且在运行时才被确定。
提示:如果你想要检验一个特定表达式的类型和值,可以使用 var_dump()。
提示:如果你想要一个人类可读的简单类型呈现来进行调试,就可以使用 gettype()。如果要检查一种特定的类型,就不要使用 gettype(),而是使用 is_type 函数。如下所示:
<?php
$a_bool = TRUE; // boolean
$a_str = "foo"; // string
$a_str2 = 'foo'; // string
$an_int = 12; // integer
echo gettype($a_bool); // 打印出:boolean
echo gettype($a_str); // 打印出:string
// 如果这是一个 integer,就把它加四
if (is_int($an_int)) {
$an_int += 4;
}
// 如果 $bool 是一个 string,就打印它
// (不会打印出任何内容)
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
如果你喜欢强制把一个变量转换成另一种特定类型,那么你既可以使用变量转换也可以使用 settype() 函数。
注意到变量可能在特定的情况下由于不同的值而被评估,并且依赖于它此时的类型。关于更多信息,参考[类型戏法]部分。同样,你可能对查看类型比较列表比较感兴趣,因为它们提供范例来比较若干相关的类型。