Класс пакета symfony2 не загружается автоматически - PullRequest
0 голосов
/ 18 января 2012

У меня есть класс, который я хочу, чтобы symfony2 автоматически загружался, чтобы я мог ссылаться на него из одной из моих зарегистрированных служб (я не хочу использовать контейнер служб для этого класса). Я поместил его в src / {Vendor} / {BundleName} / Services, но получаю исключение для класса, который не найден.

Нужно ли явно запрашивать, чтобы этот каталог автоматически загружался в autoload.php?

Должен быть лучший способ.

Ответы [ 2 ]

1 голос
/ 18 января 2012

Я не понимаю, почему вы не поместите этот класс в свой комплект?

src/{BundleNamespace}/MyClass.php
or 
src/{BundleNamespace/MyClass/MyClass.php

Если вы хотите, чтобы ваш класс был независимым от пакета, поместите его в собственную библиотеку пакетов:

src/MyLibrary/MyClass.php

Теперь вы можете использовать

MyLibrary\MyClass()

Каталог src является запасным вариантом в автозагрузчике, поэтому вам не нужно явно объявлять его пространство имен, однако вам нужно будет соблюдать PSR-0

0 голосов
/ 18 января 2012

Пространство имен для моего пользовательского класса было неправильным. Если вы помещаете файл в src / {VENDOR} / {BundleName} / Services, необходимо использовать пространство имен {VENDOR} {BundleName} \ Services

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...