Les PHP classes per­met­tent d’organiser le code en modules logiques in­dé­pen­dants, chacun d’eux possédant des pro­prié­tés et méthodes qui lui sont propres. Vous pourrez ainsi les réu­ti­li­ser, et mieux gérer vos gros projets.

PHP classes : de quoi s’agit-il ?

Les classes PHP sont com­pa­rables à des modèles ou à des plans de cons­truc­tion utilisés pour créer des objets. Une classe permet de définir les pro­prié­tés (variables ou attributs) et les méthodes (fonctions) dont un objet va disposer. Ces classes cons­ti­tuent un élément essentiel de la pro­gram­ma­tion orientée objet. Elles peuvent, par exemple, être combinées à d’autres fonctions PHP. Vous pouvez aussi créer des classes vous per­met­tant d’utiliser PHP pour récupérer des in­for­ma­tions dans une base de données MySQL.

Conseil

En utilisant Deploy Now avec IONOS, profitez d’une solution d’hé­ber­ge­ment ul­tra­mo­derne pour vos ap­pli­ca­tions. En plus d’offrir une ex­cel­lente fiabilité, Deploy Now propose aussi nombre de fonctions d’au­to­ma­ti­sa­tion puis­santes pour vous aider de façon optimale à mener à bien vos projets.

Dé­fi­ni­tion des PHP classes

En PHP, pour définir une classe, il convient d’utiliser le mot-clé « class » suivi du nom de celle-ci et d’accolades. Entre ces accolades, vous pouvez alors ren­seig­ner les pro­prié­tés et les méthodes de votre classe.

class Name {
    // php class example properties and methods
}
php

Vous trouverez ci-dessous un exemple concret :

class Animal {
    // Properties
    public $name;
    public $color;
    // Methods
    function set_name($name) {
        $this->name = $name;
    }
    function get_name() {
        return $this->name;
    }
}
php

La classe « Animal » est ac­com­pag­née de deux pro­prié­tés, « name » (nom) et « color » (couleur), mais aussi de deux méthodes : l’une pour définir le nom (« set_name ») et l’autre pour le récupérer (« get_name »).

Conseil

Vous souhaitez en savoir plus sur la pro­gram­ma­tion PHP ? N’hésitez pas à consulter le tutoriel PHP mis à dis­po­si­tion dans notre guide numérique. Nous avons en outre comparé pour vous les avantages et les in­con­vé­nients de PHP et Python et de PHP et Ja­vaS­cript.

API de IONOS pour dé­ve­lop­peurs
Gérez vos produits d'hé­ber­ge­ment grâce à notre puissante API
  • En­re­gis­tre­ments DNS
  • Ad­mi­nis­tra­tion SSL
  • Do­cu­men­ta­tion API

Quel lien existe-t-il entre les classes PHP et les objets PHP ?

Les objets sont des instances d’une classe. Dès lors que vous ins­tan­ciez une classe, vous récupérez un objet concret capable d’accéder aux pro­prié­tés et aux méthodes définies dans la classe. Pour créer les objets d’une classe, il convient d’utiliser le mot-clé « new » :

class Animal {
    // Properties
    public $name;
    public $color;
    // Methods
    function set_name($name) {
        $this->name = $name;
    }
    function get_name() {
        return $this->name;
    }
}
$dog = new Animal();
$cat = new Animal();
$dog->set_name('Tom');
$cat->set_name('Mickey');
echo $dog->get_name();
echo "<br>";
echo $cat->get_name();
php

Dans ce cas précis, « dog » (chien) et « cat » (chat) sont deux instances de la classe « Animal », chacune ayant son propre nom.

Les classes PHP peuvent aussi être héritées, ce qui veut dire que vous êtes libre de vous servir d’une classe existante afin d’en définir une nouvelle ; celle-ci hérite alors des pro­prié­tés et des méthodes de la classe sur laquelle elle se base. Vous pouvez ainsi réu­ti­li­ser ces fonctions et les améliorer. Les objets de cette nouvelle classe sont eux aussi des instances de la classe de base, et peuvent donc utiliser ses méthodes.

class Mammal extends Animal {
function breathesAir() {
      echo "inhale";
    }
}
$horse = new Mammal;
$horse->setName("Louis");
php

Grâce au mot-clé « extends », la classe « Mammal » (mammifère) hérite donc de l’ensemble des pro­prié­tés et méthodes de sa classe su­pé­rieure, « Animal ». Nous sommes alors en mesure d’ajouter une nouvelle fonction à la classe « Mammal », mais aussi d’accéder à celles dont elle a hérité.

Exemples d’ap­pli­ca­tion des PHP classes

Les classes PHP offrent de nom­breuses pos­si­bi­li­tés d’ap­pli­ca­tion. Vous trouverez ci-dessous quelques exemples pratiques.

PHP ins­tan­ceof

En PHP, l’opérateur ins­tan­ceof permet de vérifier si un objet ap­par­tient à une classe spé­ci­fique ou à une classe héritée par rapport à celle-ci.

Vous trouverez ci-dessous un exemple simple :

class Animal {
    public function speak() {
        echo "sound";
    }
}
class Dog extends Animal {
    public function speak() {
        echo "bark";
    }
}
$animal = new Dog();
if ($animal instanceof Animal) {
    $animal->speak(); // Output: "bark"
}
php

Nous com­men­çons par utiliser l’opérateur « ins­tan­ceof » pour vérifier si $animal est une instance de la classe PHP « Animal » ou de l’une de ses classes héritées. Étant donné qu’$animal est une instance de la classe « Dog » (qui pour sa part hérite d’« Animal »), la condition est remplie et le code du bloc « if » est donc exécuté.

L’opérateur instanceof peut vous être utile si vous voulez vérifier que vous pouvez bien accéder à certaines méthodes ou pro­prié­tés sans vous exposer à des erreurs (si l’objet n’a pas la classe attendue).

Classes PHP et tableaux PHP

Vous pouvez stocker les classes dans des tableaux PHP pour créer des struc­tures de données complexes.

class Product {
    public $name;
    public $price;
    public function __construct($name, $price) {
        $this->name = $name;
        $this->price = $price;
    }
}
$products = [
    new Product("Laptop", 800),
    new Product("Smartphone", 400),
    new Product("Tablet", 300)
];
foreach ($products as $product) {
    echo "Product: " . $product->name . ", Price: $" . $product->price . "<br>";
}
php

Dans cet exemple, nous dé­fi­nis­sons la classe « Product » (produit) pour re­pré­sen­ter dif­fé­rents produits, ensuite stockés dans le tableau « products ». Nous pouvons alors parcourir le tableau à l’aide de boucles PHP, comme la cons­truc­tion foreach, pour afficher le nom et le prix des produits.

PHP Class Cons­truc­tor

Le cons­truc­teur cor­res­pond à une méthode spéciale au sein d’une classe PHP. Celle-ci est appelée au­to­ma­ti­que­ment chaque fois qu’un objet de cette classe est créé. Un cons­truc­teur a pour but de formater l’état initial d’un objet ou d’effectuer d’autres tâches pré­pa­ra­toires né­ces­saires au bon fonc­tion­ne­ment dudit objet.

class Dog {
    private $name;
    private $color;
    // Constructor
    public function __construct($name, $color) {
        $this->name = $name;
        $this->color = $color;
    }
    public function sayHello() {
        return "Hello, my name is {$this->name} and my color is {$this->color}.";
    }
}
$dog = new Dog("Tom", "brown");
echo $dog->sayHello(); // Output: "Hello, my name is Tom and my color is brown."
php
IONOS Cloud Object Storage
Stockage de données sûr et éco­no­mique

Augmentez votre ren­ta­bi­lité grâce à un stockage évolutif, qui s'intègre à vos scénarios d'ap­pli­ca­tion. Vos données sont protégées par nos serveurs d'une grande fiabilité et un contrôle des accès per­son­na­lisé.

Aller au menu principal