O PHP não possui nenhum tipo de anotação nativa (também conhecida como atributos do .NET World), portanto, se você quiser implementar sua própria estrutura de anotação, pense em usar isso primeiro e economizar algum tempo.
Usar o compositor é bastante simples, basta executar o seguinte comando:
$ composer require thomas-squall/php-magic-annotations
Primeiro você precisa criar uma nova classe. Neste exemplo, a classe será chamada de MyCustomannotation
class MyCustomAnnotation
{
}Então você terá que estender a classe de anotação da biblioteca
use PHPAnnotations Annotations Annotation ;
class MyCustomAnnotation extends Annotation
{
}Adicione alguma lógica a ele
use PHPAnnotations Annotations Annotation ;
class MyCustomAnnotation extends Annotation
{
private $ name ;
private $ surname ;
public function __constructor ( $ name , $ surname )
{
$ this -> name = $ name ;
$ this -> surname = $ surname ;
}
public function GetFullName ()
{
return " $ this -> name $ this -> surname " ;
}
}Agora nossa bela anotação está pronta para ir!
Crie uma classe a ser usada para testar a anotação
class MyTestClass
{
}E adicione a anotação através dos documentos
/**
* @MyCustom(name = "Thomas", surname = "Cocchiara")
**/
class MyTestClass
{
}Agora estamos prontos para testá -lo!
use use PHPAnnotations Reflection Reflector ;
$ myObject = new MyTestClass ();
$ reflector = new Reflector ( $ myObject );
echo $ reflector -> getClass ()-> getAnnotation ( " MyCustom " )-> GetFullName ();Espero que vocês achem essa biblioteca útil.
Por favor, compartilhe e me dê um feedback :)
Thomas