suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Warum müssen wir PHP-Ausnahmecodes verwenden? Was sind die Verwendungsszenarien von PHP-Ausnahmecode?

<p>Okay, das ist für viele eine sehr dumme Frage, aber ich hoffe auf eine überwältigende Antwort :)</p> <p>Wenn ich in PHP eine Ausnahme auslöse, kann ich der Nachricht einen Code hinzufügen. </p><p> Ich fange die Ausnahme ab und behandle sie basierend auf ihrem Typ (wie <code>InvalidArgumentException</code> oder <code>OutOfBoundException</code>). Ich protokolliere die <strong>Nachricht</strong> oder zeige sie an oder gehe anderweitig angemessen damit um. </p><p> Ich kann auch eine vorherige Ausnahme anhängen, um den Ursprungspfad des Fehlers zu verfolgen. </p> <p>Es gibt jedoch eine Sache, die ich nie verwendet oder in Betracht gezogen habe: Wie nützlich ist der Code? </p> <p>Zum Beispiel: </p> <pre class="brush:php;toolbar:false;">throw new Exception("db Error", $code, $ previousException);</pre> <p>Was soll ich mit <code>$code</code> machen? </p>
P粉476547076P粉476547076492 Tage vor601

Antworte allen(2)Ich werde antworten

  • P粉807239416

    P粉8072394162023-08-25 11:39:48

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

    基本上,$code应该包含你需要以编程方式处理异常的内容。大多数异常都应该在某个地方进行处理。如果你的所有异常只是显示为错误,那么$code只有在你需要包含来自类似MySQL客户端库的错误代码时才有用。

    Antwort
    0
  • P粉891237912

    P粉8912379122023-08-25 10:20:50

    这条消息是用于向用户展示的,而代码则是供您的程序使用的。所以例如,在您的“数据库错误”示例中,您可以编写一组代码,如下:

    1. 无法连接
    2. 查询错误
    3. 结果为空
    4. 关闭连接错误

    然后使用相应的代码。当代码的其他部分遇到异常时,它们将知道发生了什么,并可能能够智能地处理它。

    Antwort
    0
  • StornierenAntwort