5.10.4 Constructeurs et destructeurs
5.10 Les classes et les objets (PHP 5)
5 Référence du langage
Manuel PHP
->Constructeurs . Destructeurs
|
5.10.4.1 Constructeurs
void
__construct (
mixed
args
,
...
)
PHP 5 permet aux développeurs de déclarer des constructeurs pour
les classes. Les classes qui possèdent une méthode constructeur
appellent cette méthode à chaque création d'une nouvelle instance
de l'objet, ce qui est intéressant pour toutes les initialisations
dont l'objet a besoin avant d'être utilisé.
| Note | |
Les constructeurs parents ne sont pas appelés implicitement
si la classe enfant définie un constructeur. Si vous
voulez utiliser un constructeur parent, il sera nécessaire de faire
appel à
parent::__construct()
.
|
| Exemple d'utilisation des nouveaux constructeurs unifiés |
<?php class BaseClass { function __construct() { print "In BaseClass constructor\n"; } }
class SubClass extends BaseClass { function __construct() { parent::__construct(); print "In SubClass constructor\n"; } }
$obj = new BaseClass(); $obj = new SubClass(); ?>
|
Pour des raisons de compatibilité ascendante, si PHP 5 ne peut pas
trouver une fonction
__construct()
pour une classe
donnée, il cherchera une fonction constructeur représentée, comme dans
l'ancien style (PHP < 5), par le nom de la classe.
Effectivement, cela signifie que le seul cas où il pourrait y avoir
un problème de compatibilité est celui où votre classe contiendrait une
méthode nommée
__construct()
et que vous en ayez un
autre usage.
|