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

Compatibilité des propriétés promues

<?php

interface i {
    // no promoted property
    function __construct(int $a);
}

class x implements i {
    // promoted property
    function __construct(private int $a) {}
}

class y extends x {
    // valid extension of a promoted property
    function __construct(int $a) {}
}

?>

Les propriétés promues sont définies dans la signature d’un constructeur. Elles ne peuvent pas être définies dans une méthode abstraite, donc elles ne sont pas autorisées dans un constructeur abstrait : cela est vrai dans une classe abstraite et dans une interface.

En revanche, il est permis d’étendre des propriétés promues sans la promotion, et vice versa.

See Also

PHP Features

Last updated: 11 October 2026