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

Pas compatible avec moins d’arguments

<?php

interface i {
    function foo($a) ;
}

interface j extends i {
    function foo($a, $b = 3);
}

interface k extends j {
    function foo($a = 4, $b = 3);
}

interface l extends k {
    function foo();
}

Une méthode est compatible avec la version de son parent lorsqu’elle a au moins le même nombre d’arguments. Cela est valable avec les classes, mais aussi avec les interfaces.

Une méthode enfant est compatible avec son parent lors de l’ajout d’un nouvel argument, tant que cet argument possède une valeur par défaut.

Un autre enfant peut également être compatible en ajoutant une valeur par défaut à l’argument existant. À ce stade, appeler la méthode sans aucun argument devient un appel valide.

Cependant, il n’est pas possible de réécrire la méthode sans arguments, car cela serait incompatible avec la définition de la méthode du parent, même s’il est toujours possible d’appeler les deux versions de la même façon.

See Also

PHP Error Messages

PHP Features

Last updated: 11 October 2026