CakeFest 2024: The Official CakePHP Conference

gettype

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

gettypeВозвращает тип переменной

Описание

gettype(mixed $value): string

Возвращает тип PHP-переменной value. Для проверки типа переменной используйте функции is_*.

Список параметров

value

Проверяемая переменная.

Возвращаемые значения

Возможными значениями возвращаемой строки являются:

  • "boolean"
  • "integer"
  • "double" (по историческим причинам в случае типа float возвращается "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

Смотрите также

  • get_debug_type() - Возвращает имя типа переменной в виде, подходящем для отладки
  • settype() - Задаёт тип переменной
  • get_class() - Возвращает имя класса, которому принадлежит объект
  • is_array() - Определяет, представляет ли собой переменная массив
  • is_bool() - Проверяет, представляет ли собой переменная логическое значение
  • is_callable() - Проверяет, что значение может быть вызвано как функция в текущей области видимости
  • is_float() - Проверяет, представляет ли собой переменная число с плавающей точкой
  • is_int() - Проверяет, представляет ли собой переменная целое число
  • is_null() - Проверяет, равно ли значение переменной null
  • is_numeric() - Проверяет, содержит ли переменная число или числовую строку
  • is_object() - Проверяет, представляет ли собой переменная объект
  • is_resource() - Проверяет, представляет ли собой переменная ресурс
  • is_scalar() - Проверяет, представляет ли собой переменная скаляр
  • is_string() - Проверяет, представляет ли собой тип переменной строку
  • function_exists() - Возвращает true, если указанная функция определена
  • method_exists() - Проверяет, существует ли метод в классе

add a note

User Contributed Notes 2 notes

up
7
mohammad dot alavi1990 at gmail dot com
9 months ago
Be careful comparing ReflectionParameter::getType() and gettype() as they will not return the same results for a given type.

string - string // OK
int - integer // Type mismatch
bool - boolean // Type mismatch
array - array // OK
up
-52
Anonymous
2 years ago
Same as for "boolean" below, happens with integers. gettype() return "integer" yet proper type hint is "int".

If your project is PHP8+ then you should consider using get_debug_type() instead which seems to return proper types that match used for type hints.
To Top