OVH Cloud OVH Cloud

[cannot redeclare]

2 réponses
Avatar
dom
Bonjour,

je viens de faire une mise a jour de PHP, version 4.2.3 vers 4.3.6.
Depuis cette mise a jour j'ai le probleme suivant :
"PHP Fatal error: Cannot redeclare FONCTION"

Dans certains de mes objets, j'ai une methode delete. je ne comprends
pas trop pourquoi je ne peux pas declarer une methode delete. L'une est
une methode rattachee a une classe, l'autre est une fonction ?

Que faire ? J'ai pas vraiment envis pour le moment de passer sur toutes
mes classes et scripts pour renommer toutes les methodes.

dom

2 réponses

Avatar
Eric Daspet
dom wrote:
Dans certains de mes objets, j'ai une methode delete. je ne comprends
pas trop pourquoi je ne peux pas declarer une methode delete. L'une est
une methode rattachee a une classe, l'autre est une fonction ?


delete est un mot clé réservé (au moins dans PHP5), il y a aussi echo,
foreach, print et quelques autres. Tu ne peux pas les utiliser en nom de
fonction ou nom de méthode.
Effectivement en théorie il n'y a pas ambiguité, en pratique il doit y
en avoir une (tout dépend comment procède le moteur pour résourdre les noms)
--
Eric Daspet
Venez aider notre mangeur de cigogne sur http://mangeur-de-cigogne.info/

Avatar
dom
Eric Daspet wrote:
delete est un mot clé réservé (au moins dans PHP5), il y a aussi echo,
foreach, print et quelques autres. Tu ne peux pas les utiliser en nom de
fonction ou nom de méthode.
Effectivement en théorie il n'y a pas ambiguité, en pratique il doit y
en avoir une (tout dépend comment procède le moteur pour résourdre les
noms)


En fait l'erreur si on peut dire venait de moi. Dans la meme classe
j'avais declare 2 methodes delete. Une avec et une sans argument,
apparement ce n'est plus possible a partir de la 4.3.6.
La c'est moins problematique, que ce que je pensais au debut.