J'ai une classe et un enfant de abstract
:PHP extension avec des arguments inconnus
abstract class Cubique_Helper_Abstract {
abstract public function execute();
}
class Cubique_Helper_Doctype extends Cubique_Helper_Abstract{
public function execute($type) {}
}
Comme vous pouvez le voir, la méthode execute()
est commune. Mais le nombre d'arguments peut être différent dans toutes les classes. Comment puis-je garder cette extension avec différents arguments de méthode?
Il est mon erreur actuelle:
Declaration of Cubique_Helper_Doctype::execute() must be compatible
with that of Cubique_Helper_Abstract::execute()
Merci je avance.
Vous pouvez obtenir les arguments avec 'func_get_args' au lieu de les définir dans la signature. Ou dans la classe abstraite, vous pouvez définir la méthode pour accepter une valeur, qui est un tableau (associatif). Dans les classes enfant, vous accédez simplement aux clés dont vous avez besoin. –
@stereofrog: Je suis tout à fait d'accord, +1. Pour mon apprentissage, commenteriez-vous ma réponse ci-dessous? A bientôt – chelmertz