gettype

(PHP 4, PHP 5, PHP 7, PHP 8)

gettype获取变量的类型

描述

gettype(混合 $value): 字符串

返回 PHP 变量 value 的类型。对于类型检查,请使用 is_* 函数。

参数

value

要进行类型检查的变量。

返回值

返回字符串的可能值为

  • "boolean"
  • "integer"
  • "double" (出于历史原因,"double"浮点 情况下返回,而不是简单的 "float")
  • "string"
  • "array"
  • "object"
  • "resource"
  • "resource (closed)" 自 PHP 7.2.0 起
  • "NULL"
  • "unknown type"

变更日志

版本 描述
7.2.0 关闭的资源现在报告为 'resource (closed)'。以前,关闭资源的返回值为 'unknown type'

示例

示例 #1 gettype() 示例

<?php

$data
= array(1, 1., NULL, new stdClass, 'foo');

foreach (
$data as $value) {
echo
gettype($value), "\n";
}

?>

上面的示例将输出类似于

integer
double
NULL
object
string

参见

添加注释

用户贡献注释 2 则注释

10
mohammad dot alavi1990 at gmail dot com
1 年前
注意,比较 ReflectionParameter::getType() 和 gettype() 会导致不同结果,因为它们对于给定类型不会返回相同的结果。

string - string // OK
int - integer // 类型不匹配
bool - boolean // 类型不匹配
array - array // OK
-57
匿名
2 年前
与下面的 "boolean" 一样,也会发生在整数上。gettype() 返回 "integer",但正确的类型提示是 "int"。

如果您的项目是 PHP8+,那么您应该考虑使用 get_debug_type(),它似乎返回与类型提示中使用的类型匹配的正确类型。
To Top