suchen
HeimBackend-EntwicklungPHP-TutorialEin Crash -Kurs von Änderungen zur Ausnahmehandhabung in PHP 7

A Crash Course of Changes to Exception Handling in PHP 7

Hauptverbesserungen bei der Handhabung von PHP 7 Ausnahme

Php 7 hat signifikante Verbesserungen für die Ausnahmebehandlung vorgenommen, wodurch die Grenzfläche Throwable und Error Klasse eingeführt wird, die die Funktionen der Fehlerbehandlung erheblich verbessert. Die Throwable -Schinschnittstelle ist die Basisschnittstelle der Klassen Exception und Error, sodass Entwickler alle geworschbaren Fehler fangen können, unabhängig davon, ob Ausnahmen oder Fehler. Die Error -Klasses behandelt verschiedene interne PHP -Fehler, einschließlich tödlicher und Typfehler, und wird in vier Unterklassen unterteilt: ArithmeticError, TypeError, ParseError, AssertionError und

.

A Crash Course of Changes to Exception Handling in PHP 7

Throwable Schnittstelle

Die Schnittstelle Throwable Exception ist die übergeordnete Schnittstelle der Klassen Error und

, sodass Sie irgendwelche Throwable -Fehler fangen können, unabhängig davon, ob es sich um eine Ausnahme oder ein Fehler handelt. Zum Beispiel:
<?php try {
    throw new Exception("这是一个异常");
} catch (Throwable $e) {
    echo $e->getMessage();
}

ParseError oder neu

:
<?php try {
    $result = eval("2*'7'");
} catch (Throwable $e) {
    echo $e->getMessage();
}

ParseError Führen Sie diesen Code aus, um ein eval() zu erhalten, da das Semikolon in

fehlt.

Throwable benutzerdefinierte Klassen können nicht direkt Throwable implementiert werden, sondern müssen die Exception -Klasse verlängern, die das

-Schinschnittstellen implementiert.

Error Kategorie

Error

Klasse behandelt interne PHP -Fehler (tödlicher Fehler oder Typfehler). Es hat vier Unterklassen:
  1. ArithmeticError
  2. : arithmetischer Fehler, wie das Teilen durch Null.
  3. TypeError
  4. : Typ Fehler, z. B. die Zuweisung des Werts des falschen Typs einer Variablen.
  5. ParseError
  6. : Parsenfehler wie Syntaxfehler.
  7. AssertionError assert(): Behauptungsfehler, geworfen, wenn die Bedingung in der Funktion
  8. falsch ist.

Error Vor dem Upgrade auf Php 7 muss ein benutzerdefinierter

-Klasses definiert werden, sein Name muss geändert werden, andernfalls tritt ein tödlicher Fehler auf.

ArithmeticError

intdiv() Dieser Fehler tritt bei der Ausführung mathematischer Operationen auf. Verwenden Sie beispielsweise

:
<?php try {
    var_dump(intdiv(PHP_INT_MIN, -1));
} catch (ArithmeticError $e) {
    echo $e->getMessage();
}

Erhält den Fehler "" von -1 DivisionByZeroError ". ArithmeticError ist eine Unterklasse von

und wird bei geteiltem Nullpunkt geworfen.

TypeError

Dieser Fehler hängt hauptsächlich mit der Skalartyp -Deklaration in Php 7 zusammen. Dieser Fehler wird angezeigt, wenn Sie eine Funktion oder Variable eines bestimmten Datentyps erstellen und versuchen, Werte für verschiedene Datentypen zu speichern.

ParseError

eval() Dieser Fehler wird bei Verwendung von

zum Einfügen einer neuen Codezeile oder zur Verwendung einer externen PHP -Datei mit einem Syntaxfehler geworfen.

AssertionError

Dieser Fehler wird nur geworfen, wenn die Behauptung in der Funktion assert() fehlschlägt. Die Anweisungen php.ini und assert.exception müssen in zend.assertions konfiguriert werden, um diesen Fehler zu fangen.

Zusammenfassung

Die in PHP 7 eingeführte Schnittstelle und Throwable -Klasse vereinfachen die Ausnahmeregelung und erleichtern die Handhabung verschiedener Fehlertypen. Achten Sie beim Upgrade auf PHP 7 auf die Benennung von Problemen mit benutzerdefinierten Error -Klassen und vertrauen Sie mit neuen Fehlern und erweiterten Klassen. Error

FAQs (FAQs)

  • Was sind die Hauptänderungen bei der Handhabung von PHP 7? php 7 führt die Grenzfläche und Throwable vor, und alle Fehler können als Ausnahmen behandelt und mit dem Error -Block erfasst werden. try/catch

  • Wie funktioniert die Schnittstelle? Throwable ist die Basisschnittstelle für alle Ausnahmen, die durch Throwable und Exception implementiert werden. Error

  • Was ist die Funktion der Klasse? Error Klasse wird verwendet, um interne PHP -Fehler zu behandeln. Error

  • Wie kann ich mit Ausnahmen in Php 7 umgehen? Verwenden Sie den -Block, um die Objekte try/catch, Throwable und Exception zu erfassen. Error

  • Was ist der Unterschied zwischen
  • und Exception? Error Für traditionelle Ausnahmen Exception für interne PHP -Fehler. Error

  • Wie kann man eine Ausnahme in Php 7 auswerfen? Verwenden Sie das Schlüsselwort . throw

  • Wie erstelle ich eine benutzerdefinierte Ausnahme in Php 7? Erweiterung Klasse. Exception

  • Was ist die Funktion von Schlüsselwörtern? finally Der Code im -Block wird unabhängig davon ausgeführt, ob die Ausnahme ausgelöst wird oder nicht. finally

  • Wie kann man eine Ausnahme in Php 7 wiederwischen? Verwenden Sie das Schlüsselwort im Block catch. throw

  • Wie behandle ich mehrere Ausnahmen in Php 7? In der -Anweisung mehrere try/catch Blöcke einbeziehen. catch

Das obige ist der detaillierte Inhalt vonEin Crash -Kurs von Änderungen zur Ausnahmehandhabung in PHP 7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Welche Daten können in einer PHP -Sitzung gespeichert werden?Welche Daten können in einer PHP -Sitzung gespeichert werden?May 02, 2025 am 12:17 AM

PHPSSIONS CANSTORESTRINGEN, ZUGNALTEN, ARRAYS, ANDOBjekte.1.

Wie starten Sie eine PHP -Sitzung?Wie starten Sie eine PHP -Sitzung?May 02, 2025 am 12:16 AM

TostartaphpSession, useSession_start () atthescript'Sbeginning.1) PlaCEITBEFOREANYOUTPUTTOTHESESSIONSCOOKIE.2) useSsionsforuserDatalikeloginStatusOrShopingCarts

Was ist eine Sitzungsregeneration und wie verbessert es die Sicherheit?Was ist eine Sitzungsregeneration und wie verbessert es die Sicherheit?May 02, 2025 am 12:15 AM

Die Sitzung der Sitzung bezieht sich auf die Generierung einer neuen Sitzungs -ID und die Ungültigmachung der alten ID, wenn der Benutzer sensible Vorgänge bei festgelegten Sitzungsangriffen ausführt. Die Implementierungsschritte umfassen: 1. Erkennen sensibler Vorgänge, 2. Erstellen neuer Sitzungs-ID, 3..

Was sind einige Leistungsüberlegungen bei der Verwendung von PHP -Sitzungen?Was sind einige Leistungsüberlegungen bei der Verwendung von PHP -Sitzungen?May 02, 2025 am 12:11 AM

PHP -Sitzungen haben erhebliche Auswirkungen auf die Anwendungsleistung. Zu den Optimierungsmethoden gehören: 1. Verwenden Sie eine Datenbank, um Sitzungsdaten zu speichern, um die Antwortgeschwindigkeit zu verbessern; 2. Reduzieren Sie die Verwendung von Sitzungsdaten und speichern Sie nur die erforderlichen Informationen. 3.. Verwenden Sie einen nicht blockierenden Sitzungsprozessor, um die Parallelitätsfunktionen zu verbessern. 4. Passen Sie die Ablaufzeit der Sitzung an, um Benutzererfahrung und Serverbelastung auszugleichen. 5. Verwenden Sie persistente Sitzungen, um die Anzahl der Les- und Schreibzeiten zu verringern.

Wie unterscheiden sich PHP -Sitzungen von Cookies?Wie unterscheiden sich PHP -Sitzungen von Cookies?May 02, 2025 am 12:03 AM

PhpSessionsaresServer-Side, whilecookiesareclient-Side.1) SESSIsions Storedataontheserver, Aremoresecure und Handlelargerdata.2) CookieStoredataoneTheClient, AslosenSecure und LimitedInsiesindaSsibilitäts- und -Stasibilitäts- und -Stasibilitäts- und -Anssibilitäts- und -Anssibilitätsporsedataandcookiesefornonsesibel, adailliertes, adailliertes, adailliertes, adailliertes, adailliertes, addiertes-addiertes- und -Staillieren- und -Anssistieren, und -Anssibilitätsporsedaten- und -Sta- und addierta und -Anssibilitäts- und addiertes- und addailliert.

Wie identifiziert PHP die Sitzung eines Benutzers?Wie identifiziert PHP die Sitzung eines Benutzers?May 01, 2025 am 12:23 AM

PhpidentifiesAsersSSessionUsingSSessionCookiesAndSessionIDs.1) WHANE Session_Start () iscalled, phpGeneratesAuniqueSessionIDStoredInacookienMamePhpSsidontonTheusers.2) thisidallowStoretrieVessionDataFromtheServer.

Was sind einige Best Practices für die Sicherung von PHP -Sitzungen?Was sind einige Best Practices für die Sicherung von PHP -Sitzungen?May 01, 2025 am 12:22 AM

Die Sicherheit von PHP -Sitzungen kann durch folgende Maßnahmen erreicht werden: 1. Verwenden Sie Session_regenerate_id (), um die Sitzungs -ID zu regenerieren, wenn sich der Benutzer anmeldet oder eine wichtige Operation ist. 2. Verschlüsseln Sie die Übertragungssitz -ID durch das HTTPS -Protokoll. A. Verwenden Sie Session_save_path (), um das sichere Verzeichnis anzugeben, um Sitzungsdaten zu speichern und Berechtigungen korrekt festzulegen.

Wo werden standardmäßig PHP -Sitzungsdateien gespeichert?Wo werden standardmäßig PHP -Sitzungsdateien gespeichert?May 01, 2025 am 12:15 AM

PhpSessionFilesArestoredinTHedRectorySpecifiedBySession.save_path, typischerweise/tmponunix-likesystemsorc: \ windows \ temponwindows

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!