Inhaltsverzeichnis:
Video: HTML5 Tutorial für Anfänger #00 Vorwort und Vorbereitung [1080p HD] 2024
Die HTML5- und CSS3-Programmierung im echten Leben ist gefährlich. Viele Dinge können in PHP schief gehen. So ist die intelligente Art, Daten zu programmieren, defensive Programmierung . Diese Vorgehensweise beinhaltet das Antizipieren von Fehlern und den Versuch, sie anständig zu lösen. PHP hat einige fortgeschrittene Fehlerbehandlungstechniken zur Verfügung, die perfekt für die Aufgabe sind.
Stellen Sie sich vor, Sie haben einen Code geschrieben, der wie folgt aussieht:
print 5/0;
Das würden Sie wahrscheinlich nicht tun, aber manchmal bricht schlechter Code durch. Wenn Ihr Server so eingerichtet ist, dass Fehlermeldungen ausgegeben werden, sehen Sie etwas Ähnliches.
Ausnahmebehandlung
Es ist tatsächlich viel mehr los, als Sie vielleicht am Anfang schätzen würden. Das Standardverhalten vieler PHP-Installationen ist es, Fehler auszublenden. Es treten jedoch Fehler auf, insbesondere wenn Sie Benutzereingaben zulassen. Diese Codeliste fängt explizit nach Fehlern und meldet sie unabhängig von den Servereinstellungen:
versuchen. phpgetMessage ();} // Versuch beenden? >
Hier ist was passiert:
-
Verwenden Sie das try-Schlüsselwort, um potenziell gefährlichen Code anzuzeigen.
Das Schlüsselwort try öffnet einen Codeblock (wie eine Schleife oder Bedingung). Der gesamte Code zwischen try und catch wird als potenziell gefährlich eingestuft.
-
Platziere gefährlichen Code im try-Block.
Jeder Code, der Fehler verursachen könnte, sollte innerhalb des try-Blocks platziert werden. Der gefährlichste Code umfasst normalerweise Dinge, die der Programmierer nicht direkt steuern kann: Zugriff auf externe Dateien, Operationen mit benutzerdefinierten Daten oder die Exposition gegenüber externen Programmen und Prozessen.
-
Verwenden Sie die catch-Klausel, um Fehler zu erkennen.
Die catch-Klausel gibt das Ende des gefährlichen Codes an.
-
Geben Sie den Ausnahmetyp an.
Der Parameter für die catch-Klausel ist ein Objekt vom Typ Exception. PHP hat eine Reihe von eingebauten Ausnahmen, und oft enthält eine Bibliothek oder ein Toolset neue Ausnahmen (Sie können sie auch selbst erstellen, wenn Sie möchten).
-
Verwalten Sie die Ausnahme.
Die catch-Klausel öffnet einen weiteren Codeblock. Setzen Sie den Code hier ein, der das Problem löst (oder sterben Sie wenigstens mit ein wenig Stil und Anmut - informieren Sie den Benutzer, was schief gelaufen ist, bevor Sie diese sterbliche Spule ausmischen). Die häufigste Zeile hier ist print ($ e-> getMessage ()). Alle Ausnahmeobjekte verfügen über eine getMessage () -Methode, und diese Zeile gibt die aktuelle Fehlermeldung an.
Wissen, wann Ausnahmen abzufangen sind
Wenn Ihr Server für das Debuggen eingerichtet ist (wie XAMPP standardmäßig ist), ist es normalerweise nicht erforderlich, die Ausnahmebehandlung einzurichten, da das Standardverhalten eines Debug-Setups die Ausnahmen trotzdem melden.Es gibt einige Male, die Sie noch explizite Ausnahmebehandlung wünschen:
-
Sie befinden sich auf einem Server ohne Debug-Einstellungen: Sie haben möglicherweise keinen Zugriff auf die Serverkonfiguration, daher können Sie möglicherweise nicht automatisch einschalten. Ausnahmeberichte. Manuelle Ausnahmeberichte gehen immer noch durch.
-
Sie möchten etwas Besonderes machen: Der automatische Exception-Handler meldet das Problem einfach. Wenn Sie etwas anderes tun möchten (z. B. eine Standarddatei verwenden, wenn eine Datei nicht gefunden wird), benötigen Sie für diese Situation einen benutzerdefinierten Ausnahmehandler.
-
Sie tun etwas Exotisches: Spezialbibliotheken enthalten oft eigene benutzerdefinierte Ausnahmen. Sie benötigen eine Ausnahmebehandlung, um diese Situationen abzudecken.