在程序开发中,错误处理这一块是非常重要的,今天本文章就来告诉他关于在php开发中,错误处理函数并且举例说明错误处理的重要性。
1、内置异常处理类、2、捕获并处理异常的示例、3、exception类的成员函数getmessage()、4、exception类的成员函数getfile()、5、exception类的成员函数getline()、6、显示警告或错误信息、7、自定义错误处理函数。
1,内置异常处理类
<?php class exception { protected $message = 'unknown exception'; // 异常信息 protected $code = 0; // 用户自定义异常代码 protected $file; // 发生异常的文件名 protected $line; // 发生异常的代码行号 function __construct($message = null, $code = 0); final function getmessage(); // 返回异常信息 final function getcode(); // 返回异常代码 final function getfile(); // 返回发生异常的文件名 final function getline(); // 返回发生异常的代码行号 final function gettrace(); // backtrace() 数组 final function gettraceasstring(); // 已格成化成字符串的 gettrace() 信息 function __tostring(); // 可输出的字符串 } ?>
2、捕获并处理异常的示例
<?php try { $error = '抛出异常信息,并且跳出try块<br/>'; if (is_dir('./test')) { echo '检测到../ch16是一个目录'; echo '<br/>'; echo '可能继续做其他一些操作'; echo '<br/>'; echo '....'; echo '<br/>'; } else { throw new exception($error, 12345); } echo '上面throw异常的话,这行代码不会执行,转而执行catch块<br/>'; } catch(exception $e) { echo '捕获异常: ' . $e->getmessage() . "<br/>错误代码:" . $e->getcode() . '<br/>'; //显示$error和123456 echo '<br/>'; } echo '继续执行'; ?>
3、exception类的成员函数getmessage()
<?php $file = './test/readme.txt'; try { if (is_dir($file)) { echo '检测到目录'; } else { //创建异常对象,错误信息将有exception类的成员函数getmessage()返回 throw new exception('未找到该目录或文件'); } } catch(exception $e) { echo '捕获异常: ' . $e->getmessage(); echo '<br/>==============================='; echo '<br/>'; } echo '程序执行完毕'; ?>
4、exception类的成员函数getfile()
<?php $file = './test/readme.txt'; try { if (is_dir($file)) { echo '检测到目录'; } else { //创建异常对象,错误信息将有exception类的成员函数getmessage()返回 throw new exception('未找到该目录或文件'); } } catch(exception $e) { echo '捕获异常: ' . $e->getmessage(); echo '<br/><br/>'; echo '错误所在文件:' . $e->getfile(); echo '<br/>==============================='; echo '<br/>'; } echo '程序执行完毕'; ?>
5、exception类的成员函数getline()
<?php $file = './test/readme.txt'; try { if (is_dir($file)) { echo '检测到目录'; } else { //创建异常对象,错误信息将有exception类的成员函数getmessage()返回 throw new exception('未找到该目录或文件'); } } catch(exception $e) { echo '捕获异常: ' . $e->getmessage(); echo '<br/><br/>'; echo '错误所在文件:' . $e->getfile(); echo '<br/><br/>'; echo '错误所在行号:' . $e->getline(); echo '<br/>==============================='; echo '<br/>'; } echo '程序执行完毕'; ?>
6、显示警告或错误信息
<?php error_reporting(e_warning | e_error); //显示警告和错误信息 echo $uvar; //这里产生注意信息,但不会显示出来 callfunc(); //这里产生一个致命错误,并且会显示出来 ?>
7、自定义错误处理函数。
<?php set_error_handler('myhandler'); //自定义错误处理函数 function myhandler($code, $msg, $file, $line) { echo "<br/>"; echo "程序 <b>$file</b> 执行过程中,在第 <b>$line</b> 行,产生一个错误。"; echo "<br/>"; echo "错误代码为:<b>$code</b>, 错误的原因是: <b>$msg</b>"; } echo $uvar; ?>
本文链接:
收藏随意^^请保留教程地址.

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

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Dreamweaver Mac
Visuelle Webentwicklungstools

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

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

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),