Singelton: Execution code __Construct impossible

Résolu
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010 - 7 nov. 2009 à 12:42
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010 - 7 nov. 2009 à 15:50
Bonjour à tous, je fais appel à vous car je rencontre un petit problème avec un pattern Singelton.

En effet, le code placé dans private function __Construct ne fonctionne pas. Je m'explique:

J'inclus des singeltons avec la function suivante:

	private static function RequireSingelton($Categorie, $ClassName, $Fichier, $Ligne) {

$Importation = CORE_CLASS.DS.$Categorie.DS.$ClassName.EXT_CLASS;

    if (file_exists($Importation)) {
require_once($Importation);			
self::$ListeSingelton[$ClassName]= eval($ClassName.'::GetInstance();');
return true;
} else {
 $AGPErreur=new AGPMainErreur;
 $AGPErreur->Handler(E_USER_ERROR, ERR_008.' : '. $ClassName, $Fichier, $Ligne,ERR_008);
}
    } 


Dans le cas ou j'importe le singelton suivant :

class Test {
private static $Instance;	

/**
 * @desc Construction du singelton
 */
private function __Construct(){ echo 'Simple test d\'execution';}	
public static function GetInstance() {
if (empty(self::$Instance)) {
self::$Instance = new Test;
}
return self::$Instance;
}
}// Fin de class


L' echo 'simple test d\'execution'; dans le constructeur ne fonctionne pas

Avez-vous une idée du pourquoi?

3 réponses

TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
7 nov. 2009 à 14:46
Salut,

Il n'y a pas de majuscule à __construct
3
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010
7 nov. 2009 à 14:55
merci pour cette erreur mais apres modification cela ne marche toujours pas.

Je me demande si le problème ne vient pas de eval dans la fonction d'include. Est-ce possible?
0
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010
7 nov. 2009 à 15:50
Ok c'était bien çà. Merci
0
Rejoignez-nous