Classes en PHP

Dans le monde de la programmation orientée objet, une classe sert de modèle pour créer des objets. Elle définit les attributs et les méthodes d'un certain type d'objet. L'objet créé à partir d'une classe est appelé instance de cette classe.

Syntaxe d'une classe

Prenons un exemple simple avec une classe qui modélise une voiture.

annee = $annee;  }  function obtenir_annee() {    return $this->annee;  }}?>

Dans cet exemple, la classe Voiture possède trois propriétés : marque, modèle et annee. On y trouve également deux méthodes : definir_annee() et obtenir_annee().

Le mot-clé $this

Au sein des méthodes d'une classe, le mot-clé $this permet de faire référence à l'instance de l'objet en cours d'exécution. Lorsque la méthode fait référence à $this->annee, elle parle de la propriété annee de l'instance précise exécutant la méthode.

Créer des objets avec le mot-clé new

Pour créer une instance d'une classe, on utilise le mot-clé new. Voici un exemple d'instanciation d'objets à partir de la classe Voiture :

marque = 'Honda';  $honda->modèle = 'Accord';  $ford->marque = 'Ford';  $ford->modèle = 'Explorer';
  // Utiliser les méthodes de la classe  $honda->definir_annee(2019);  $ford->definir_annee(2020);
  echo $honda->obtenir_annee() . ' ' . $honda->marque . ' ' . $honda->modèle . '
'; // Affiche : 2019 Honda Accord echo $ford->obtenir_annee() . ' ' . $ford->marque . ' ' . $ford->modèle . '
'; // Affiche : 2020 Ford Explorer ?>

L'opérateur instanceof

L'opérateur instanceof permet de vérifier si un objet appartient à une certaine classe. Voici un exemple :

Ce code vérifie si l’instance $ford est bien une instance de la classe Voiture. Si c'est le cas, un message de confirmation sera affiché.