Pourquoi devons-nous utiliser des codes d'exception PHP ? Quels sont les scénarios d'utilisation du code d'exception PHP ?
P粉476547076
P粉476547076 2023-08-24 12:31:44
0
2
560
<p>D'accord, c'est une question très stupide pour beaucoup de gens, mais j'espère obtenir une réponse massive :)</p> <p>Lorsque je lance une exception en PHP, je peux ajouter un code au message. </p><p> J'attrape l'exception et la gère en fonction de son type (comme <code>InvalidArgumentException</code> ou <code>OutOfBoundException</code>). J'enregistre le message <strong></strong> ou je l'affiche, ou je le gère de manière appropriée. </p><p> Je peux également joindre une exception précédente pour retracer le chemin d'origine de l'erreur. </p> <p>Cependant, il y a une chose que je n’ai jamais utilisée ni envisagée : quelle est l’utilité du code ? </p> <p>Par exemple : </p> <pre class="brush:php;toolbar:false;">lancer une nouvelle exception("db Error", $code, $previousException);</pre> <p>Que dois-je faire avec <code>$code</code> ? </p>
P粉476547076
P粉476547076

répondre à tous(2)
P粉807239416

Comment interpréter la valeur de $code取决于异常类型。例如,如果你有一个表示MySQL数据库错误的Exception子类,那么$code可能是原生的MySQL错误代码。在低级IO错误的情况下,这可能是来自<errno.h>.

Fondamentalement, $code应该包含你需要以编程方式处理异常的内容。大多数异常都应该在某个地方进行处理。如果你的所有异常只是显示为错误,那么$coden'est utile que si vous devez inclure des codes d'erreur provenant d'une bibliothèque cliente comme MySQL.

P粉891237912

Le message est destiné à être affiché à l'utilisateur, tandis que le code est destiné à être utilisé par votre programme. Ainsi, par exemple, dans votre exemple « Erreur de base de données », vous pourriez écrire un ensemble de code comme celui-ci :

  1. Impossible de se connecter
  2. Erreur de requête
  3. Le résultat est vide
  4. Erreur de fermeture de connexion

Utilisez ensuite le code correspondant. Lorsque d’autres parties du code rencontrent une exception, elles sauront ce qui s’est passé et pourront peut-être la gérer intelligemment.

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