AnnotationClassLoader
class AnnotationClassLoader implements LoaderInterface
AnnotationClassLoader загружает информацию о маршрутизации из PHP-класса и его методов.
Вам нужно определить реализацию метода getRouteDefaults(). В большинстве случаев этот метод должен определять некоторую PHP-вызов, который будет вызываться для маршрута (контроллер в MVC).
Аннотация @Route может быть установлена на классе (для глобальных параметров) и на каждом методе.
Основное значение аннотации @Route — путь маршрута. Аннотация также распознает несколько параметров: requirements, options, defaults, schemes, methods, host и name. Параметр name является обязательным. Вот пример того, как его можно использовать:
/**
* @Route("/Blog")
* /
class Blog
{
/**
* @Route("/", name="blog_index")
* /
public function index()
{
}
/**
* @Route("/{id}", name="blog_post", requirements = {"id" = "\d+"})
* /
public function show()
{
}
}
Методы
| __construct(Reader $reader) | ||
| setRouteAnnotationClass(string $class) Устанавливает класс аннотации для чтения свойств маршрута. | ||
| load(string $class, string|null $type = null) Загружает аннотации из класса. | ||
| bool | supports(mixed $resource, string|null $type = null) Возвращает, поддерживает ли этот класс данный ресурс. | |
| setResolver(LoaderResolverInterface $resolver) Устанавливает разрешитель загрузчика. | ||
| LoaderResolverInterface | getResolver() Получает разрешитель загрузчика. |
Подробности
__construct(Reader $reader)
Параметры
| Reader | $reader |
setRouteAnnotationClass(string $class)
Устанавливает класс аннотации для чтения свойств маршрута.
Параметры
| string | $class | Полное имя класса |
load(string $class, string|null $type = null)
Загружает аннотации из класса.
Параметры
| string | $class | Имя класса |
| string|null | $type | Тип ресурса или null, если неизвестен |
Исключения
| InvalidArgumentException | Когда маршрут не может быть проанализирован |
bool supports(mixed $resource, string|null $type = null)
Возвращает, поддерживает ли этот класс данный ресурс.
Параметры
| mixed | $resource | Ресурс |
| string|null | $type | Тип ресурса или null, если неизвестен |
Значение возврата
| bool | True, если данный класс поддерживает указанный ресурс, иначе false |
setResolver(LoaderResolverInterface $resolver)
Устанавливает разрешитель загрузчика.
Параметры
| LoaderResolverInterface | $resolver |
LoaderResolverInterface getResolver()
Получает разрешитель загрузчика.
Значение возврата
| LoaderResolverInterface | Экземпляр LoaderResolverInterface |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/Routing/Loader/AnnotationClassLoader.html