This project is not being actively maintained. If you are interested in helping to maintain this project, take a look at the open issues on GitHub and submit pull requests. |
Introduction
Doctrine Annotations offers to implement custom annotation functionality for PHP classes.
Annotations aren't implemented in PHP itself which is why
this component offers a way to use the PHP doc-blocks as a
place for the well known annotation syntax using the
@
char.
Annotations in Doctrine are used for the ORM configuration to build the class mapping, but it can be used in other projects for other purposes too.
Installation
You can install the Annotation component with composer:
$ composer require doctrine/annotations
Create an annotation class
An annotation class is a representation of the later used annotation configuration in classes. The annotation class of the previous example looks like this:
The annotation class is declared as an annotation by
@Annotation
.
Read more about custom annotations.
Reading annotations
The access to the annotations happens by reflection of the class
containing them. There are multiple reader-classes implementing the
Doctrine\Common\Annotations\Reader
interface, that can
access the annotations of a class. A common one is
Doctrine\Common\Annotations\AnnotationReader
:
A reader has multiple methods to access the annotations of a class.
Read more about handling annotations.
IDE Support
Some IDEs already provide support for annotations:
- Eclipse via the Symfony2 Plugin
- PHPStorm via the PHP Annotations Plugin or the Symfony2 Plugin