Qu’est-ce que le mot-clé $this et comment l’utiliser en PHP ?

Introduction

$this est l’une des choses les plus importantes et les plus utiles en PHP OOP (Object Oriented Programming). Et malheureusement, c’est l’une des choses que l’on néglige. Beaucoup de gens ont entendu parler de ce mot-clé mais ne savent pas comment l’utiliser.

Dans cet article, je vais vous expliquer brièvement ce qu’est le $this et comment il fonctionne. Si vous n’avez aucune connaissance de la POO, je vous recommande d’aller voir ce que c’est afin de mieux comprendre cet article.

Qu’est-ce que le $this et comment fonctionne-t-il ?

Le mot clé $this nous permet d’utiliser les méthodes et les propriétés de notre classe. Cela signifie que nous pouvons, par exemple, appeler une méthode ou une propriété au sein même de la classe actuelle.

A titre d’exemple, commençons par créer une classe simple appelée Dog. Nous allons utiliser cette classe pour les prochains exemples de notre post.

class Dog {

    public $name;
    public $age;
}

Ainsi, afin d’obtenir la propriété de nos classes, nous devons utiliser la fonction $this comme indiqué ci-dessous :

$this->name

L’exemple ci-dessus montre simplement comment utiliser le mot-clé correctement. Remarquez comment nous devons supprimer le $ du mot clé $name de la propriété$name. Il est essentiel que vous vous en souveniez, car vous risquez de ne pas comprendre pourquoi votre code ne s’exécute pas correctement.

Le site $this mot-clé et méthodes

Utilisons maintenant le $this dans une méthode de notre classe :

class Dog {

    public $name;
    public $age;

    public function intro(){

        echo 'Voici ' .$this -> name . ' et il a ' .$this -> age . 'ans.';

    }
}

Pour que notre fonction s’exécute, nous devons créer nous-mêmes un objet de la classe et définir les valeurs des propriétés de notre classe, puis appeler la méthode publique :

<?php
// Instancier
$blacky = new Dog();

// Ajouter la propriété name
$blacky->name = 'Toffee';

// Ajouter la propriété age
$blacky->age = '2 months';

Et enfin, nous devons appeler notre fonction.

echo $blacky->intro();

Ce que nous avons fait maintenant est de mettre les propriétés de la classe dans notre fonction. La sortie sera quelque chose comme ça :

C’est Toffee et il a 2 mois.

Nous pouvons également ajouter une méthode dans une méthode à l’intérieur de notre classe en utilisant la fonction $this en utilisant le mot-clé $this . Voici un exemple rapide pour lequel nous allons utiliser une nouvelle classe.

class Man{
    public $name;

    public function say(){
         echo 'Bonjour ' . $this->name;     
    }

    public function hello(){
        $this->say;
    }
}

Maintenant, créons notre objet, définissons les valeurs, et renvoyons la fonction.

// Instancier l'objet
$john = new Man();

// Ajouter le nom
$john->name ='john';

// Appeler la méthode hello()
echo $john->hello();

Le résultat devrait être

Bonjour John

Voici comment utiliser le $this dans une méthode et appeler une autre méthode de cette classe.

Conclusion

Comme vous pouvez le voir dans l’ensemble, il est assez pratique. Bien sûr, il va falloir un peu de temps pour s’habituer à le mettre dans votre code, mais une fois que vous aurez pris le coup de main, vous l’utiliserez 24 heures sur 24, 7 jours sur 7.

Nouveau Tutoriel

Newsletter

Ne manquez jamais les nouveaux conseils, tutoriels et autres.

Pas de spam, jamais. Nous ne partagerons jamais votre adresse électronique et vous pouvez vous désabonner à tout moment.