Erreur class redeclare !!!

Signaler
Messages postés
269
Date d'inscription
lundi 29 novembre 2004
Statut
Membre
Dernière intervention
23 août 2011
-
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
-
Salut tout le monde!

 il se fait que dans une de mes page j'ai besoin d'une class CLASSE_1 donc je fait dans ma page include(url/CLASSE_1.php);
Et comme par hasard la meme class est necessaire dans une autre class CLASSE_2 qui est deja dans ma page ....

 et comme vous comprenez il y a erreur puisque je declare cette meme class deux fois!!!!

 qq'un aurai une technique pour resoudre ce probleme ? merci!!!!
J.BAHOLE

5 réponses

Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
33
Salut,

j'ai pas très bien compris, si tu inclus ta class une fois ça suffit, non ???

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
269
Date d'inscription
lundi 29 novembre 2004
Statut
Membre
Dernière intervention
23 août 2011

oui !!!
mais dis toi que sur ta page index.php tu ais besoin de faire :
include(Class1);
include(Class2);

et que dans class2 tu ai besoin de faire :
include(Class1);

tu as la forcement une erreur!!!

pourais tu aider maintenant?
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
33
Ba faudrai faire une class de vérification que le fichier n'est pas déja inclu, sinon pourquoi tu n'inclus pas directement le fichier Class2, comme ça, il y aurai pas de pb, vu que class1 serai inclus qu'une fois...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Hello,

prend l'habitude de n'écrire une classe que dans un seul endroit à la fois (unicité = maintenance plus simple du code). Donc supprime la classe de ton fichier 2  et il pourra inclure le fichier 1.
Ou alors tu fais carrément un fichier 3 avec juste ta classe, et les fichiers 1 et 2 inclueront le fichier 3. C'est plus propre, mais à la fin ce système te crée plein de fichiers différents (un par classe si on va au bout du raisonnement) et c'est moins bon pour les perfs, à toi de trouver le bon équilibre.

à+
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Salut,
<li>Tu peux faire dans ton fichier class2.php un code du genre :</li>if( !class_exists('MA_CLASSE_1') )
{
    include './class1.php';
}
<li>Ensuite, tu as la solution du include_once() (ou require_once()). Ces fonctions vont te permettre de n'inclure qu'une seule fois un fichier</li><li>Enfin, tu as le système du __autoload. Une fonction, qui vas te permettre d'inclure automatiquement tes class (vois sur www.php.net)</li><hr />Si ma reponse te convient, merci de l'accepter !