C'est probablement une question vraiment stupide mais je ne trouve pas la réponse et les essais et erreurs ont échoué.
Je développe un composant pour Joomla 3.x et j'ai un certain nombre de classes que je veux utiliser. J'essaie de mettre en œuvre la JLoader::registerPrefix()
méthode. Disons que j'ai deux classes Helper
et NotHelpful
. Helper
est une classe statique stockée dans:
JPATH_LIBRARIES. '/foo/bar/Helper.php'
et NotHelpful
est une classe non statique stockée dans:
JPATH_LIBRARIES. «/foo/baz/NotHelpful.php»
Si je veux les enregistrer, je comprends que j'appellerais:
JLoader::registerPrefix('Foo', JPATH_LIBRARIES . '/foo');
ce que je fais du point d'entrée à l'application.
Ensuite, pour appeler Helper
, je voudrais simplement utiliser FooBarHelper::method1();
ou pour instancier un nouveau NotHelpful
serait$Class = new FooBazNotHelpful();
Ce qui n'est pas clair pour moi, c'est quel devrait être le nom de la classe réelle dans Helper.php ou NotHelpful.php . Devrait - il être FooBarHelper
, Helper
, BarHelper
ou tout autre chose?
Lorsque j'essaie d'appeler, FooBarHelper::method1();
j'obtiens l'erreur, quel que soit le nom de ma classe, il semble:
Erreur fatale PHP: classe 'FooBarHelper' introuvable dans
Je fais clairement au moins une chose de mal. Quelqu'un peut-il me dire ce que sont un ou plusieurs d'entre eux?
class Helpful { ...
-elleclass FooBazNotHelpful { ...
ou quelque chose d'autre?