Page 1 sur 1

Surcharge de fonction

Posté : 10 janv. 2006, 15:38
par Maitrepylos
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

Posté : 10 janv. 2006, 15:39
par iclo
Sans avoir vérifier (je suis pas un habitué de la poo sous php) je répondrais oui ;)

Posté : 10 janv. 2006, 15:52
par Maitrepylos
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.

Posté : 10 janv. 2006, 16:41
par Truc
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.

Posté : 10 janv. 2006, 19:12
par jeff
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

Posté : 11 janv. 2006, 10:40
par Maitrepylos
Merci à vous, j'ai pris le possibilité de Truc