


Wissen Sie, wie Sie Fehlerbehandlungsfunktionen und Fehlermaskierung in PHP anpassen können?
Im vorherigen Artikel habe ich Ihnen „Erklären Sie die Fehlertypen und Fehlerstufen von PHP“ vorgestellt, in dem die Fehlertypen und Fehlerstufen in PHP ausführlich vorgestellt wurden Fehlerbehandlung und das Blockieren von Fehlern in PHP, ich hoffe, es wird für alle hilfreich sein!
<strong><span style="font-size: 20px;">set_error_handler() </span></strong>
Benutzerdefinierte Funktion zur Fehlerbehandlung<strong><span style="font-size: 20px;">set_error_handler() </span></strong>
函数自定义错误处理函数
PHP中提供了set_error_handler()函数就是用来指定一个函数作为错误处理函数,它的语法格式如下:
set_error_handler(自定义函数名 [, int $error_types = E_ALL | E_STRICT ])
其中自定义函数名这个自定义函数的语法格式如下:
error_handler(int 错误的级别 , string 错误的信息 [, string 发生错误的文件名 [, int 发生错误的行号 ]])
之前如果有过定义的错误处理程序,返回的就是改程序的程序名称;如果是内置的错误处理程序,返回的结果是NULL。若是指定了一个无效的回调函数,同样会返回NULL。
接下来我们通过示例来看一下,自定义一个错误处理函数,并使用它来处理程序中的错误,示例如下:
<?php function error_handler($errno, $errstr, $errfile, $errline ) { echo "error number:".$errno."<br/>"; echo "error msg:".$errstr."<br/>"; echo "error file:".$errfile."<br/>"; echo "error line:".$errline."<br/>"; die('something error'); } set_error_handler("error_handler"); strpos(); ?>
输出结果:
我们在使用此函数时需要注意的是,只用这种方式来进行错误处理,若是函数没有错误的话,或者说程序没有在错误的函数中运行,程序会继续往下执行发生错误的函数语句,因此我们需要使用die()函数来终止函数的运行。
在我们的日常开发中,程序中的异常无法自动抛出来,这时候我们也可以使用set_error_handler() 自定义,将异常当作错误来处理,这样我们就可以使用自定义错误处理来自动捕捉异常。
示例如下:
<?php function error_handler($errno, $errstr, $errfile, $errline ) { echo "error number:".$errno."<br/>"; echo "error msg:".$errstr."<br/>"; echo "error file:".$errfile."<br/>"; echo "error line:".$errline."<br/>"; die('something error'); } set_error_handler("error_handler"); /* 触发异常 */ try { $a = 5/0;//程序会自动捕捉这个异常,并且由自定义函数来处理 echo $a; } catch(Exception $e) { echo $e->getMessage(); } ?>
输出结果:
错误屏蔽
在PHP开发过程中,我们不仅可以通过set_error_handler()自定义错误处理函数来处理错误,我们还能够把错误屏蔽掉,在有些情况下,错误屏蔽也是必不可少的。那接下来给大家列举一些用于错误屏蔽的方法。
<span style="font-size: 16px;"><strong>@</strong></span>
---错误控制运算符
在PHP中,将错误控制运算符@,放在一个表达式的前面,那这个表达式中可能存在的错误都会被屏蔽掉。
其中关于@的使用,我们需要注意的是:@运算符只有放在表达式的前面才会生效,例如变量、函数、常量等等的前面可以使用@运算符,绝对不能放在函数的或者类的定义之前,也不能够放在条件结构语句的前面。
示例如下:
<?php $link = @mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db") or die('数据库连接失败!'); ?>
输出结果:
在上述示例中,看得出通过@错误控制运算符,在表达式前能够屏蔽表达式。
使用
error_reporting()
函数屏蔽错误
PHP 中有很多的错误级别,使用 error_reporting() 函数可以设置 PHP 会报告何种错误,函数的语法格式如下:
error_reporting(设置错误级别)
关于错误级别在上一篇文章《带你一起了解PHP的错误类型和错误级别》中有更详细的介绍,接下来我们通过示例来看一下函数的使用:
<?php error_reporting(0); $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db") or die('数据库连接失败!'); ?>
输出结果:
通过
display_errors
参数屏蔽错误
这种方法时最彻底的一种方法,前面两种方法只作用于单行或者单个文件,但是通过display_errors 参数屏蔽错误是作用在所有的PHP文件,那我们一起来看一下应该怎么操作吧。
首先我们需要打开php.ini
PHP stellt die Funktion set_error_handler() bereit, mit der eine Funktion als Fehlerbehandlungsfunktion angegeben wird. Das Syntaxformat lautet wie folgt:
🎜🎜Als nächstes schauen wir uns ein Beispiel an, passen eine Fehlerbehandlungsfunktion an und verwenden sie, um Fehler im Programm zu behandeln:
🎜rrreee🎜Ausgabeergebnis:
/>🎜 🎜

🎜🎜In unserer täglichen Entwicklung können Ausnahmen im Programm nicht automatisch ausgelöst werden. Zu diesem Zeitpunkt können wir auch set_error_handler() verwenden, um Ausnahmen anzupassen und als Fehler zu behandeln, sodass wir die benutzerdefinierte Fehlerbehandlung zum automatischen Abfangen verwenden können Ausnahmen. 🎜🎜Das Beispiel sieht wie folgt aus: 🎜rrreee🎜Ausgabeergebnis:
🎜🎜

- 🎜
<span style="font-size: 16px;"><strong>@</strong></span> Code>---Fehlerkontrolloperator🎜
🎜🎜 Bezüglich der Verwendung von @ müssen wir beachten, dass der @-Operator nur wirksam wird, wenn er vor einem Ausdruck platziert wird. Der @-Operator kann beispielsweise vor Variablen, Funktionen, Konstanten usw. verwendet werden. usw., darf aber nicht vor der Definition einer Funktion oder Klasse und auch nicht vor einer bedingten Strukturanweisung platziert werden. 🎜🎜Das Beispiel sieht wie folgt aus:
🎜rrreee🎜Ausgabeergebnis:
🎜🎜

- 🎜Verwenden Sie die Funktion
error_reporting()
, um Fehler maskieren 🎜
🎜rrreee🎜Ausgabeergebnisse:
🎜🎜

🎜
- 🎜By
display_errors
Parametermaskierungsfehler🎜
php.ini
öffnen, dann display_errors suchen und den Wert auf „Aus“ setzen, um alle PHP-Fehlerberichte zu deaktivieren. 🎜(Im vorherigen Artikel „Wie lade ich Dateien in PHP hoch? Nach dem Lesen werden Sie es verstehen! “ wurden die relevanten Kenntnisse zum Entfernen von PHP- und INI-Konfigurationsdateien vorgestellt.)
Das Beispiel lautet wie folgt:
Auf diese Weise können Sie Wrong blockieren.
Bei Interesse können Sie auf „PHP-Video-Tutorial“ klicken, um mehr über PHP-Kenntnisse zu erfahren.
Das obige ist der detaillierte Inhalt vonWissen Sie, wie Sie Fehlerbehandlungsfunktionen und Fehlermaskierung in PHP anpassen können?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
