Annotation PHP/Symfony pour la balise Throw
P粉464082061
P粉464082061 2024-03-27 17:50:27
0
1
298

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粉464082061
P粉464082061

répondre à tous(1)
P粉076987386

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

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal