<?php
class foo {}
class bar extends foo {}
class baz extends bar {}
print_r(class_parents(new baz));
?>
Will output:
Array
(
[bar] => bar
[foo] => foo
)
(PHP 5, PHP 7, PHP 8)
class_parents — Retorna as classes pai da classe fornecida
Esta função retorna um array com o nome das classes pai da
object_or_class
fornecida.
object_or_class
Um objeto (instância de classe) ou uma string (nome da classe).
autoload
Se deve carregar automaticamente caso ainda não tenha sido carregado.
Um array em caso de sucesso, ou false
quando a classe fornecida não existe.
Exemplo #1 Exemplo de class_parents()
<?php
class foo { }
class bar extends foo {}
print_r(class_parents(new bar));
// você também pode especificar o parâmetro como uma string
print_r(class_parents('bar'));
spl_autoload_register();
// use autoloading para carregar a classe 'not_loaded'
print_r(class_parents('not_loaded', true));
?>
O exemplo acima produzirá algo semelhante a:
Array ( [foo] => foo ) Array ( [foo] => foo ) Array ( [parent_of_not_loaded] => parent_of_not_loaded )
Nota: Para verificar se um objeto estende uma classe,
instanceof
ou a função is_a() deve ser usada em vez disso.
instanceof
<?php
class foo {}
class bar extends foo {}
class baz extends bar {}
print_r(class_parents(new baz));
?>
Will output:
Array
(
[bar] => bar
[foo] => foo
)