class_implements

(PHP 5, PHP 7, PHP 8)

class_implements Retorna as interfaces que são implementadas pela classe ou interface fornecida

Descrição

class_implements(object|string $object_or_class, bool $autoload = true): array|false

Esta função retorna um array com os nomes das interfaces que o object_or_class fornecido e seus pais implementam.

Parâmetros

object_or_class

Um objeto (instância de classe) ou uma string (nome da classe ou interface).

autoload

Se deve ou não carregar automaticamente se ainda não estiver carregado.

Valor Retornado

Um array em caso de sucesso, ou false quando a classe fornecida não existe.

Exemplos

Example #1 Exemplo de class_implements()

<?php

interface foo { }
class bar implements foo {}

print_r(class_implements(new bar));

// você também pode especificar o parâmetro como uma string
print_r(class_implements('bar'));

spl_autoload_register();

// use o carregamento automático para carregar a classe 'not_loaded'
print_r(class_implements('not_loaded', true));

?>

O exemplo acima produzirá algo semelhante a:

Array
(
    [foo] => foo
)
Array
(
    [foo] => foo
)
Array
(
    [interface_of_not_loaded] => interface_of_not_loaded
)

Notas

Note: Para verificar se um objeto implementa uma interface, use instanceof ou a função is_a() em vez disso.

Veja Também