Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Constructeur nécessaire

<?php


const A = 'b::c';

class B {
    static function C() { echo __METHOD__; }
}

//valid call to \B::C()
constant('A')();

// class A not found
//new A;

// Call to undefined function A()
A();

// parse error, this is not supported
//{A}();

Par défaut, les classes n’ont pas besoin d’un constructeur, et celui-ci peut être omis. C’est également vrai dans le cas des classes enfants : PHP recherche d’abord un constructeur local, puis un constructeur parent, et il est valide de n’en avoir aucun.

En revanche, si l’un des enfants effectue un appel explicite à parent::__construct, alors il doit exister au moins un constructeur explicite dans la hiérarchie. Sinon, PHP génère le message d’erreur Cannot call constructor.

En règle générale, il peut être judicieux d’inclure toujours la définition du constructeur, pour éviter de devoir l’ajouter plus tard.

See Also

PHP Error Messages

PHP Features

Last updated: 11 October 2026