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

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éfini 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

To Top