Вероятно, это действительно глупый вопрос, но я не могу найти ответ, и метод проб и ошибок не удался.
Я разрабатываю компонент для Joomla 3.x и у меня есть несколько классов, которые я хочу использовать. Я пытаюсь реализовать JLoader::registerPrefix()метод. Допустим, у меня есть два класса Helperи NotHelpful. Helperстатический класс хранится в:
JPATH_LIBRARIES. '/Foo/bar/Helper.php'
и NotHelpfulявляется нестатическим классом, хранящимся в:
JPATH_LIBRARIES. '/Foo/baz/NotHelpful.php'
Если я хочу зарегистрировать это, я понимаю, что позвонил бы:
JLoader::registerPrefix('Foo', JPATH_LIBRARIES . '/foo');
что я делаю с точки входа в приложение.
Затем, чтобы позвонить Helper, я бы просто использовал FooBarHelper::method1();или для создания нового NotHelpfulбыло бы$Class = new FooBazNotHelpful();
Что мне неясно, так это то, каким должно быть фактическое имя класса внутри Helper.php или NotHelpful.php . Должна ли она быть FooBarHelper, Helper, BarHelperили что - то совсем другое?
Когда я пытаюсь позвонить, FooBarHelper::method1();я получаю сообщение об ошибке, независимо от того, как называется мой класс:
Неустранимая ошибка PHP: класс 'FooBarHelper' не найден в
Я явно делаю хотя бы одну вещь неправильно. Может кто-нибудь сказать мне, что один или несколько из них?
class Helpful { ...илиclass FooBazNotHelpful { ...или что-то еще?