get_debug_type

Gets the type name of a variable in a way that is suitable for debugging

Syntax

get_debug_type(mixed $value): string

Parameters

value

The variable being type checked.

Return

Possible values for the returned string are:

Type + State Return Notes
null "null"
Booleans (true or false) "bool"
Integers "int"
Floats "float"
Strings "string"
Arrays "array"
Resources "resource (resourcename)"
Resources (Closed) "resource (closed)" A file stream after being closed with fclose
Objects from Named Classes The full name of the class including its namespace
Objects from Anonymous Classes "class@anonymous" Anonymous classes are those created through the $x = new class { ... } syntax

Examples

<?

echo get_debug_type(null) . PHP_EOL;
echo get_debug_type(true) . PHP_EOL;
echo get_debug_type(1) . PHP_EOL;
echo get_debug_type(0.1) . PHP_EOL;
echo get_debug_type("foo") . PHP_EOL;
echo get_debug_type([]) . PHP_EOL;

$fp = fopen(__FILE__, 'rb');
echo get_debug_type($fp) . PHP_EOL;

fclose($fp);
echo get_debug_type($fp) . PHP_EOL;

echo get_debug_type(new stdClass) . PHP_EOL;
echo get_debug_type(new class {}) . PHP_EOL;

?>
null
bool
int
float
string
array
resource (stream)
resource (closed)
stdClass
class@anonymous

boolval

debug_zval_dump

doubleval

empty

floatval

get_defined_vars

get_resource_id

get_resource_type

gettype

intval

is_array

is_bool

is_callable

is_countable

is_double

is_float

is_int

is_integer

is_iterable

is_long

is_null

is_numeric

is_object

is_real

is_resource

is_scalar

is_string

isset

print_r

serialize

settype

strval

unserialize

unset

var_dump

var_export

PHP

Home Menu