Old style constructor
Reports old-style constructor declarations (ClassName()
) and suggests replacing them with new-style constructors (__construct()
).
Prior to PHP 8.0, old-style constructor syntax used in the classes in the global namespace is treated as deprecated and will result in an E_DEPRECATED
error. If both a __construct()
and a ClassName()
method are defined, __construct()
will be called.
In namespaced classes, or any classes as of PHP 8.0, a ClassName()
method never has any special meaning and will never be called as a constructor. As a result, the inspection does not report such cases if the PHP language level is set to 8.0 or later.
See Constructors and destructors (php.net) for details.
Inspection Details | |
---|---|
Available in: | PhpStorm 2023.3, Qodana for PHP 2023.3 |
Plugin: | PHP, 233.SNAPSHOT |