Créer un objet à partir de la classe



Actuellement, vous devriez avoir un fichier  Membre.class.php qui contient la définition de la classe, c'est-à-dire les plans de construction de vos futurs objets :

<?php

class Membre

{

    private $pseudo;

    private $email;

    private $signature;

    private $actif; 

 

    public function envoyerEMail($titre, $message)

    {

        mail($this->email, $titre, $message);

    }

     

    public function bannir()

    {

        $this->actif = false;

        $this->envoyerEMail('Vous avez été banni', 'Ne revenez plus !');

    }

     

    public function getPseudo()

    {

        return $this->pseudo;

    }

         

    public function setPseudo($nouveauPseudo)

    {

        if (!empty($nouveauPseudo) AND strlen($nouveauPseudo) < 15)

        {

            $this->pseudo = $nouveauPseudo;

        }

    }   

}

?>


Maintenant que la classe est prête (même si on peut encore l'améliorer), on peut commencer à l'utiliser et donc à créer des objets. Créez un nouveau fichier (que vous appellerez comme vous voulez, par exemple index.php), dans lequel vous allez créer et utiliser un objet de type Membre.

<?php

 

include_once('Membre.class.php');

 

$membre = new Membre();

$membre->setPseudo('M@teo21');

echo $membre->getPseudo() . ', je vais te bannir !';

$membre->bannir();

 

?>


On commence par inclure la définition de la classe Membre qui est située dans le fichier Membre.class.php. On utilise la fonction include_once() qui nous assure que le fichier n'a pas déjà été inclus ailleurs dans la page, ce qui aurait provoqué une erreur car il est interdit de définir deux fois une même classe.


On crée ensuite un nouvel objet de type Membre avec la ligne :

<?php

$membre = new Membre();

?>


Nous avons maintenant un objet $membre qui représente un membre vide. On lui définit ensuite un pseudo, on l'affiche, puis pour s'amuser on le bannit. ;-)

Ne confondez pas la classe et l'objet. La classe commence avec un « M » majuscule, tandis que l'objet avec un « m » minuscule. Nous aurions d'ailleurs pu donner n'importe quel nom à notre objet ($mateo$nouveauVenu…), mais faute de trouver un meilleur nom j'ai utilisé le même que celui de la classe, avec la première lettre en minuscule pour les différencier.


Vous avez donc là un exemple concret d'utilisation de la classe. Bien que celle-ci soit basique, vous pourriez déjà donner ce fichier Membre.class.php à des amis programmeurs, accompagné de préférence d'une petite documentation qui explique comment l'utiliser, et vos amis pourront comme vous créer et manipuler les données des membres.


Une classe, c'est donc un peu un package prêt à l'emploi. Elle contient son lot de variables et de fonctions. Pour l'utiliser, nous faisons tout simplement appel à ses fonctions sans nous soucier de ce qu'elles font à l'intérieur. Cela rejoint donc les schémas que je vous avais présentés au début de ce chapitre.


Les variables et le code des fonctions n'intéressent pas le programmeur qui utilise la classe. Il se contente simplement d'appuyer sur des boutons, c'est-à-dire d'appeler les fonctions dont il a besoin pour manipuler les données de son membre : « Donne-lui le pseudo M@teo21 », « Bannis-le », etc.

Créé avec HelpNDoc Personal Edition: Rationalisez votre processus de documentation avec le modèle HTML5 de HelpNDoc