PHP n'a aucune sorte d'annotation native (AKA Attributs de .NET World), donc si vous souhaitez implémenter votre propre cadre d'annotation, pensez à l'utiliser d'abord et à gagner du temps.
L'utilisation du compositeur est assez simple, exécutez simplement la commande suivante:
$ composer require thomas-squall/php-magic-annotations
Vous devez d'abord créer une nouvelle classe. Dans cet exemple, la classe sera appelée MyCustomAnnotation
class MyCustomAnnotation
{
}Alors vous devrez prolonger la classe d'annotation de la bibliothèque
use PHPAnnotations Annotations Annotation ;
class MyCustomAnnotation extends Annotation
{
}Ajoutez-y une logique
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 " ;
}
}Maintenant, notre belle annotation est prête à partir!
Créer une classe à utiliser pour tester l'annotation
class MyTestClass
{
}Et ajouter l'annotation à travers les documents
/**
* @MyCustom(name = "Thomas", surname = "Cocchiara")
**/
class MyTestClass
{
}Maintenant, nous sommes prêts à le tester!
use use PHPAnnotations Reflection Reflector ;
$ myObject = new MyTestClass ();
$ reflector = new Reflector ( $ myObject );
echo $ reflector -> getClass ()-> getAnnotation ( " MyCustom " )-> GetFullName ();J'espère que vous trouverez cette bibliothèque utile.
Veuillez le partager et me donner des commentaires :)
Thomas