Surcharge de fonction

Mammouth du PHP | 1029 Messages

10 janv. 2006, 15:38

Bonjour, est ce que dans une class je peux nommer deux fonction identique avec le même nom.

mais une aurais un parametre et l'autre 2.

merci
L'expérience est la somme de toutes nos erreurs.

ViPHP
ViPHP | 2144 Messages

10 janv. 2006, 15:39

Sans avoir vérifier (je suis pas un habitué de la poo sous php) je répondrais oui ;)

Mammouth du PHP | 1029 Messages

10 janv. 2006, 15:52

et bien non

Code : Tout sélectionner

Fatal error: Cannot redeclare datesql::dateuseu() in /var/w
peut-être que je dois redéfinir une class qui hérite de la première et là redéfinir ma fonction.

pas intéréssant comme idée.
L'expérience est la somme de toutes nos erreurs.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

10 janv. 2006, 16:41

c'est possible pour le constructeur mais pas pour les fonctions.

tu peux toujours écrire une fonction avec des parametres qui seront égal à "null" si l'utilisation n'en dépands pas.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 1311 Messages

10 janv. 2006, 19:12

si tu est en php5 tu peut essai de le faire avec __call
public function __call($name,$args)
{
switch(count($arg))
{
case 0:return $this->myArray->$name();break;

case 1:return $this->myArray->$name($args[0]);break;

case 2:return $this->myArray->$name($args[1]);break;
}
voici un exemple issue de php solution de novembre :wink:

ps: sinon la solution de truc est tres bien
et tu passe un tableau avec descle que tu teste apres

Mammouth du PHP | 1029 Messages

11 janv. 2006, 10:40

Merci à vous, j'ai pris le possibilité de Truc
L'expérience est la somme de toutes nos erreurs.