Interfaces et instanceof en POO en PHP
Avec instanceof, on peut vérifier
si une classe implémente une interface donnée
ou non. Regardons un exemple. Supposons que nous ayons
la classe suivante :
<?php
class Quadrate implements iFigure
{
}
?>
Créons un objet de cette classe et vérifions-le
avec l'opérateur instanceof :
<?php
$quadrate = new Quadrate;
var_dump($quadrate instanceof Quadrate); // affichera true
var_dump($quadrate instanceof Figure); // affichera true
?>
Créez l'interface Figure3d qui aura une méthode getVolume
et une méthode getSurfaceSquare.
Créez la classe Cube qui
implémentera l'interface Figure3d.
Créez plusieurs objets de la classe Quadrate,
plusieurs objets de la classe Rectangle
et plusieurs objets de la classe Cube.
Enregistrez-les dans un tableau $arr dans un ordre
aléatoire.
Parcourez en boucle le tableau $arr et affichez
à l'écran uniquement les aires des objets implémentant
l'interface iFigure.
Parcourez en boucle le tableau $arr et affichez
pour les figures planes leurs aires, et pour les figures volumiques
- les aires de leur surface.