La colonne tutoriellethinkphp framework suivante vous expliquera comment personnaliser les exceptions globales dans thinkphp5. J'espère que cela sera utile aux amis dans le besoin !
Afin de renvoyer un json déraisonnable pour diverses erreurs lors de l'écriture de l'API, utilisez directement la page d'erreur fournie avec TP5. Cela n'a évidemment aucun effet sur le client, vous devez donc personnaliser vous-même l'exception globale.
1. Créez une classe d'exception globale (utilisée pour transmettre des messages d'erreur, des codes d'état, etc.)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
|
De cette façon, vous pouvez donner des codes d'état, des messages d'erreur et des codes d'erreur personnalisés qui ne peuvent pas être transmis.
2. Créez une classe de gestion des erreurs
La classe de gestion des erreurs hérite de la classe de gestion des erreurs fournie avec TP5 En remplaçant la méthode de rendu, vous pouvez personnaliser les erreurs.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
|
3. Modifiez la configuration de configuration
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
4. Utilisez la méthode de classe d'erreur
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
Sous-classe d'erreur personnalisée
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
Demandez cette méthode getUser et signalez une erreur ~ Elle affichera
1 2 3 4 5 |
|
d'autres types d'erreur, c'est-à-dire vous. peut continuer à créer des sous-classes d'exception et à définir ces propriétés d'erreur.
5. Résumé
Non seulement dans le framework TP5, y compris le framework laravel, vous pouvez également réécrire vous-même la méthode de rendu de la classe d'exception pour obtenir les données de retour d'erreur ou le modèle de page que vous souhaitez.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!