Posté par kazhar le 07/11/2004 dans la catégorie Les Classes
Si vous definissez une fonction du nom de la classe dans celle-ci, cette fonction sera automatiquement appellée au démarrage de la classe:
Code :
<?php
class Bistrot
{
var $NombreClient;
function Bistrot()
{
$this->$NombreClient = 5;
}
}
$CafeDeLaGare = new Bistrot; // Et appel implicite à Bistrot()
echo $CafeDeLaGare->$NombreClient // Affiche 5
?>
Cette fonction est appellée constructeur
Il est possible de créer une classe "dans une autre classe" avec extends:
Code :
<?php
class Bistrot
{
function JaiSoif()
{
echo "Vous désirez boire un verre";
}
}
class Restaurant extends Bistrot
{
function JaiFaim()
{
echo "Vous désirez le plat du jour";
}
}
class Hotel extends Restaurant
{
function JaiSommeil()
{
echo "Vous désirez dormir";
}
}
$LeBonRepos = new Hotel;
$LeBonRepos->JaiFaim();
$LeBonRepos->JaiSoif();
$LeBonRepos->JaiSommeil();
?>