Maison > Questions et réponses > le corps du texte
J'ai récemment rencontré un petit problème concernant les annotations dans Symfony (je ne sais pas s'il s'agit également d'un problème purement PHP).
La nouvelle annotation d'itinéraire ressemble à ceci :
#[路由('route', name: 'route_name')]
Quand je veux @throws
le même type d'annotation, je ne trouve aucun moyen de remplacer l'ancien type qui ressemble à ceci :
/** * @throws Exception */
Je veux donc de nouveaux types de commentaires, même @throws
P粉0769873862024-03-28 09:16:53
L'idée principale derrière les propriétés est d'attacher des métadonnées statiques à notre code (méthodes, propriétés, etc.). Ces métadonnées incluent souvent des concepts tels que « configuration ». Dans votre exemple, cette propriété définit un chemin vers votre cadre. Avec des principes, vous pouvez construire vos entités. Il y a quelques années, il n'existait aucune propriété, les développeurs utilisaient donc des annotations pour les déclarer. PHP8 nous permet d'utiliser des propriétés. Évitons d'utiliser l'annotation (@Route).
La balise Throw ne définit rien dans votre application. Cette exception ne peut être levée que par votre code.
/** * @throws Exception //this line has no impact on your code */ #[Route('route', name: 'route_name')] //this line has an impact by setting up your routes public myAction() { throw new Exception('foo'); // This line have an impact on your code }
Il s'agit d'informations destinées aux développeurs (et aux précieux IDE) pour nous aider à comprendre notre code. Par conséquent, la balise @Throw n'a pas de version d'attribut. Les balises @Throw sont "uniquement" de la documentation, PHPDoc, des commentaires :) Votre code doit avoir un mélange de commentaires dans les commentaires et les propriétés