La programmation orientée objet (POO) en PHP est un paradigme de programmation qui permet de structurer et organiser le code en utilisant des classes et des objets.
Les classes en PHP définissent les propriétés et les méthodes d’un objet. Les propriétés sont les variables qui décrivent l’état d’un objet, tandis que les méthodes sont les fonctions qui décrivent les actions que l’objet peut effectuer.
Pour créer une classe en PHP, on utilise la syntaxe suivante :
class NomDeLaClasse {
// propriétés de la classe
// méthodes de la classe
}
Pour créer un objet à partir d’une classe, on utilise l’opérateur « new » :
$monObjet = new NomDeLaClasse();
Les propriétés d’une classe peuvent être définies en utilisant le mot clé « var » ou « public » suivi du nom de la propriété et de sa valeur. Les méthodes sont définies en utilisant le mot clé « function » suivi du nom de la méthode et des instructions à exécuter.
Les méthodes et propriétés d’une classe peuvent être appelées à l’aide des flèches « -> » :
$monObjet->maPropriété = "une valeur";
$monObjet->maMéthode();
La POO en PHP permet également de définir des relations entre les classes en utilisant des concepts tels que l’héritage et l’encapsulation. L’héritage permet à une classe de hériter les propriétés et les méthodes d’une autre classe, tandis que l’encapsulation permet de cacher les détails d’implémentation d’une classe en rendant certaines propriétés et méthodes privées.
En utilisant la POO, on peut structurer et organiser le code de manière plus efficace, en réutilisant les classes et en facilitant la maintenance et l’évolution du code.
Voici un exemple simple d’utilisation de la POO en PHP :
class Voiture {
public $marque;
public $couleur;
public $vitesse = 0;
public function accélérer($vitesse)
{
$this->vitesse += $vitesse;
}
public function freiner($vitesse)
{
$this->vitesse -= $vitesse;
}
public function afficherVitesse()
{
echo "La vitesse actuelle est de " . $this->vitesse . " km/h.";
}
}
$maVoiture = new Voiture();
$maVoiture->marque = "Peugeot";
$maVoiture->couleur = "rouge";
$maVoiture->accélérer(30);
$maVoiture->afficherVitesse();
// affiche "La vitesse actuelle est de 30 km/h."
$maVoiture->freiner(20);
$maVoiture->afficherVitesse();
// affiche "La vitesse actuelle est de 10 km/h."
Dans cet exemple, nous avons défini une classe « Voiture » qui a des propriétés « marque », « couleur » et « vitesse » ainsi que des méthodes « accélérer », « freiner » et « afficherVitesse ». Nous avons ensuite créé un objet « maVoiture » à partir de cette classe et lui avons assigné des valeurs pour les propriétés « marque » et « couleur ».
Nous avons ensuite utilisé les méthodes « accélérer » et « freiner » pour modifier la valeur de la propriété « vitesse » et utilisé la méthode « afficherVitesse » pour afficher la vitesse actuelle de la voiture.