Retourne les interfaces implémentées par une classe ou une interface donnée

# class_implements

(PHP 5, PHP 7, PHP 8)

class_implements — Retourne les interfaces implémentées par une classe ou une interface donnée

### Description

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

Cette fonction retourne un tableau avec les noms des interfaces que la classe `object_or_class` ainsi que ses parents implémentent.

### Liste de paramètres

`object_or_class`

  Un objet (instance) ou une chaîne de caractères (nom de la classe ou de l'interface).

`autoload`

  Définit s'il faut autocharger si pas déjà autochargé.

### Valeurs de retour

Un tableau en cas de succès, ou `false` quand la classe donnée n'existe pas.

### Exemples

Exemple #1 Exemple avec class_implements()

    <?php

    interface foo { }
    class bar implements foo {}

    print_r(class_implements(new bar));

    // vous pouvez aussi spécifier le paramètre comme une chaîne de caractères
    print_r(class_implements('bar'));

    spl_autoload_register();

    // Utilisation de l'autoloading pour charger la classe 'not_loaded'
    print_r(class_implements('not_loaded', true));

    ?>

Résultat de l'exemple ci-dessus est similaire à :

    Array
    (
        [foo] => foo
    )
    Array
    (
        [foo] => foo
    )
    Array
    (
        [interface_de_non_chargée] => interface_de_non_chargée
    )

### Notes

> Note: Il est préférable d'utiliser `instanceof` ou la fonction is_a() pour vérifier qu'un objet implémente une interface.

### Voir aussi

- class_parents() - Retourne les classes parentes d'une classe
- get_declared_interfaces() - Retourne un tableau avec toutes les interfaces déclarées
- is_a() - Vérifie si l'objet est d'un certain type ou sous-type.
- `instanceof`

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open