php 错误处理与异常处理方法与实例教程
在程序开发中,错误处理这一块是非常重要的,今天本文章就来告诉他关于在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; ?>
本文链接:
收藏随意^^请保留教程地址.

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

如果您在使用印表機時遇到錯誤訊息,例如操作無法完成(錯誤0x00000771),可能是因為印表機已中斷連線。在這種情況下,您可以透過以下方法解決問題。在本文中,我們將討論如何在Windows11/10PC上修復此問題。整個錯誤訊息說:操作無法完成(錯誤0x0000771)。指定的印表機已被刪除。修正WindowsPC上的0x00000771印表機錯誤若要修復印表機錯誤操作無法完成(錯誤0x0000771),指定的印表機已在Windows11/10PC上刪除,請遵循下列解決方案:重新啟動列印假脫機

目錄解決方法一解決方法二一、刪除Windows更新的臨時檔案二、修復受損的系統檔案三、檢視並修改登錄項目四、關閉網卡IPv6五、執行WindowsUpdateTroubleshootor工具進行修復六、關閉防火牆和其它相關的防毒軟體。七、關閉WidowsUpdate服務。解決方法三解決方法四華為電腦Windows更新出現「0x8024401c」報錯問題現象問題原因解決方案仍未解決?最近web伺服器因為系統漏洞需要更新,登入伺服器之後,更新提示錯誤碼0x8024401c解決方法一

1.首先我們右鍵點選任務列空白處,選擇【任務管理器】選項,或右鍵開始徽標,然後再選擇【任務管理器】選項。 2.在開啟的任務管理器介面,我們點選最右邊的【服務】選項卡。 3.在開啟的【服務】選項卡,點選下方的【開啟服務】選項。 4.在開啟的【服務】窗口,右鍵點選【InternetConnectionSharing(ICS)】服務,然後選擇【屬性】選項。 5.在開啟的屬性窗口,將【開啟方式】修改為【禁用】,點選【應用程式】後點選【確定】。 6.點選開始徽標,然後點選關機按鈕,選擇【重啟】,完成電腦重啟就行了。

LinuxOops:詳解這一錯誤的含義,需要具體程式碼範例什麼是LinuxOops?在Linux系統中,"Oops"指的是核心出現了一個嚴重的錯誤導致系統崩潰的情況。 Oops實際上是一種核心崩潰的機制,它會在發生致命錯誤時停止系統運行,並列印相關的錯誤訊息,以便開發者對問題進行診斷和修復。 Oops通常發生在核心空間中,與用戶空間的應用程式無關。當內核遇到

標題:分析Oracle錯誤3114:原因及解決方法在使用Oracle資料庫時,常常會遇到各種錯誤代碼,其中錯誤3114是比較常見的一個。此錯誤一般涉及資料庫連結的問題,可能導致存取資料庫時出現異常狀況。本文將對Oracle錯誤3114進行解讀,探討其造成的原因,並給出解決該錯誤的具體方法以及相關的程式碼範例。 1.錯誤3114的定義Oracle錯誤3114通

水池的異常是遊戲中一個支線任務,很多玩家想知道水池的異常任務怎麼完成,其實非常簡單,首先我們要掌握在水中拍攝的技術,才可以接取任務,調查惡臭味的來源,之後發現原來是水池底下有很多的屍體,具體內容一起來看看這篇浪人崛起水池的異常任務圖文攻略。浪人崛起水池的異常任務攻略1、和飯塚對話,學習在水中拍攝的技術。 2、前往下圖位置接取水池的異常任務。 3.來到任務地點和NPC對話,了解到附近的水池有一股惡臭味。 4、前往水池調查。 5.大概游到下圖位置,潛入到水下,會發現很多的屍體。 6.使用相機對屍體進行拍攝。 7

顯示錯誤是在香香腐宅app中可能會出現的問題,有些用戶還不太清楚香香腐宅app為什麼顯示錯誤,可能是網絡連接問題、後台程序過多、註冊信息錯誤等問題,接下來就是小編為使用者帶來的app顯示錯誤解決方法的介紹,有興趣的使用者快來一起看看吧!香香腐宅app為何顯示錯誤答案:網路連線問題、後台程式過多、註冊資訊錯誤等詳情介紹:1、【網路問題】解決方法:檢視裝置連線網路狀態,重新連線或選擇其他網路連線使用即可。 2.【後台程式過多】解決方法:關閉正在運作的其他程序,釋放系統,可以加快軟體的運作。 3、【註冊資訊錯

今天要為大家介紹一篇MIT上週發表的文章,使用GPT-3.5-turbo解決時間序列異常檢測問題,初步驗證了LLM在時間序列異常檢測的有效性。整個過程沒有進行finetune,直接使用GPT-3.5-turbo進行異常檢測,文中的核心是如何將時間序列轉換成GPT-3.5-turbo可辨識的輸入,以及如何設計prompt或pipeline讓LLM解決異常檢測任務。下面跟大家詳細介紹一下這篇工作。圖片論文標題:Largelanguagemodelscanbezero-shotanomalydete
