(PHP 8)
get_debug_type — Obtém o nome do tipo de uma variável de forma adequada a depuração
Retorna o nome resolvido da variável PHP value
. Esta função resolverá objetos ao nome da classe deles, recursos ao nome do tipo de recurso deles, e valores escalares ao nome comum deles como seria usado em declarações de tipo.
Este função difere de gettype() pelo fato de retornar nomes de tipo que são mais consistentes com o uso real, ao invés daqueles exsitentes por razões históricas.
value
A variáver a ter o tipo verificado.
Valores possíveis para a string de retorno são:
Tipo + Estado | Valor de Retorno | Notas |
---|---|---|
nulo | "null" | - |
Booleanos (verdadeiro ou falso) | "bool" | - |
Inteiros | "int" | - |
Números de ponto flutuante | "float" | - |
Strings | "string" | - |
Arrays | "array" | - |
Recursos | "resource (resourcename)" | - |
Recursos (Fechados) | "resource (closed)" | Exemplo: um fluxo de arquivo depois de ter sido fechado com fclose. |
Objetos de Classes com Nome | O nome completo da classe incluindo seu espaço de nomes, ex.: Foo\Bar | - |
Objetos de Classes Anônimas | "class@anonymous" | Classes anônimas são aquelas criadas através da sintaxe $x = new class { ... } |
Exemplo #1 Exemplo de get_debug_type()
<?php
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;
?>
O exemplo acima produzirá algo semelhante a:
null bool int float string array resource (stream) resource (closed) stdClass class@anonymous