Was ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?

慕斯
Freigeben: 2023-03-10 19:30:01
Original
1714 Leute haben es durchsucht

Der vorherige Artikel hat Ihnen „Was ist Ausnahmebehandlung in PHP?“ vorgestellt. Wie verwende ich Try-Catch bei der Ausnahmebehandlung? 》In diesem Artikel erfahren Sie weiterhin, was eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP ist. Wie können wir eine benutzerdefinierte Ausnahmebehandlungsklasse lösen? Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?

Benutzerdefinierte Ausnahmebehandlungsklasse:

final:Wenn sie zum Ändern einer Klasse verwendet wird, bedeutet dies, dass diese Klasse nicht vererbt werden kann. Wenn sie zum Ändern einer Methode verwendet wird, bedeutet dies, dass diese Methode kann nicht überschrieben werden

Zu vererben Da es sich um eine offizielle Ausnahmebehandlungsklasse handelt, können Methoden nach Belieben hinzugefügt werden. Achten Sie darauf, ob die Methode der übergeordneten Klasse umgeschrieben werden kann.

[Hinweis] Wenn es mehrere Fänge gibt, schreiben Sie oben die benutzerdefinierte Ausnahmeklasse und unten die offizielle Ausnahmeklasse Eine Funktion. Wenn eine Ausnahme ausgelöst wird, wird sie automatisch von dieser Funktion abgefangen. = Die Funktion hat einen Parameter und der Parameter ist das Ausnahmeobjekt. Nehmen wir den Code als Beispiel:

set_exception_ handler('test') ;
Nach dem Login kopieren

Bezüglich der Ausnahmebehandlungsklasse, wir erklären es Ihnen in Form von Code. Zuerst müssen wir eine Klasse erstellen. Wir müssen die offizielle Ausnahmebehandlungsklasse erben und dann eine (Funktion) definieren ) in der Klasse) Methode, wenn wir versuchen, den Code über try auszuführen, können wir Catch verwenden, um ihn über unsere eigene Ausnahmebehandlungsklasse abzufangen:

<?php
function test($e)
{
echo $e->getMessage();
}
set_exception_handler(&#39;test&#39;);
throw new Exception( &#39;现在有异常了&#39;);
Nach dem Login kopieren
Die Ergebnisse der Codedemonstration sind wie folgt:

Das Folgende ist unsere eigene definierte Ausnahmebehandlungsklasse, die wir ausführen können. Der zweite Satz von Methoden,

<?php
class MyException extends Exception
{
function demo( )
{
  echo &#39;执行第二套方案<br />&#39; ;
}
}
try {
  echo &#39;我将于茫茫人海中访我唯一灵魂之伴侣<br />&#39;;
  throw new MyException( &#39;主人出错啦&#39;);
  echo &#39;得之,我幸;不得,我命<br />&#39;;
} catch (MyException $e) {
  echo $e->getMessage();
}
?>
Nach dem Login kopieren

Die Ergebnisse der Codedemonstration sind wie folgt:

Was ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?

Dies ist unsere eigene definierte Ausnahmebehandlungsklasse.

Lassen Sie uns jetzt den Code kopieren und herausfinden, welcher Catch die Ausnahme abfangen kann. Der Code lautet wie folgt:

catch (MyException $e) {
  echo $e->getMessage();
  echo &#39;<hr>&#39;;
  $e->demo();
}
Nach dem Login kopieren
Was ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?Die Ergebnisse der Codedemonstration sind wie folgt: Aus dem Code geht hervor, dass es sich bei der abgefangenen Ausnahme um unsere benutzerdefinierte Ausnahme handelt. Die Ausnahmebehandlungsklasse wird zum Erfassen dieses Objekts verwendet. Was passiert, wenn wir die Reihenfolge von MyException und Exception ändern? Wenn wir es ausführen, werden wir feststellen, dass es immer noch die erste ist.

Hinweis:

Exception ist eine offizielle Klasse, es ist eine übergeordnete Klasse, es ist eine übergeordnete Klasse von MyException, wenn beide Ausnahmen gleichzeitig abfangen Gleichzeitig müssen wir zuerst die Unterklassen setzen und dann die offizielle Klasse schreiben.

Empfohlenes Lernen: Was ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist eine benutzerdefinierte Ausnahmebehandlungsklasse in PHP? Wie löse ich eine benutzerdefinierte Ausnahmebehandlungsklasse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!