bonjour
 
j'aimerais charger des classes a la volée sans passer par __autoload()
 
par exemple j'ai un composant pour appeler un web service
chaque appel est géré par une sous-classe
et j'aimerais que la fabrique d'objets de mon composant charge le fichier en fonction du nom de l'appel.
Ca eviterait ainsi de charger toutes les classes d'appels pour 1 seule utilisée
 
exemple qui marche pas:  
 
Code :
 - class WSCall
 - {
 -         public static function create($_callClass, array $_callParams= array())
 - 	{
 -   $_callClass = __CLASS__.'Call_'.$_callClass;
 -   if (!class_exists($_callClass) && file_exists(dirname(__FILE__).'/Calls/'.$_callClass.'.php'))
 -   	require_once dirname(__FILE__).'/Calls/'.$_callClass.'.php';
 -   if (class_exists($_callClass))
 -   {
 -   	$callObject = new $_callClass($_callParams);
 -   }
 -   else
 -   {
 -   	throw new EezyMarketEbayWSAPIException("La classe  <strong>$_callClass</strong> est introuvable" );
 -   }
 -   return $callObject;
 - 	}
 - }
 
  | 
 
le require_once n'a pas l'air de fonctionner
car le code qui appelle WSCall:create('GetAccount') genere un message d'erreur : "class WSCall_GetAccount not found"
et pourtant le chemin est bon (j'ai verifié en l'éditant avec vi)
 
alors que si j'utilise ma méthode qui fait des require_once de tous les fichiers, la ca marche.