亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡,我們將竭誠為您提供優(yōu)質(zhì)的服務! 誠征網(wǎng)絡推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯(lián)系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業(yè)務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發(fā)消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術(shù)支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

php錯誤處理和php異常處理機制

添加時間:2014-12-1 20:39:15  添加: 思海網(wǎng)絡 

當我們開發(fā)程序時,有時候程序出現(xiàn)了問題,我們就可以用以下幾種辦法找出錯誤。

開發(fā)階段:開發(fā)時輸出所有的錯誤報告,有利于我們進行程序調(diào)試
運行階段:我們不要讓程序輸出任何一種錯誤報告(不能讓用戶看到(包括懂技術(shù), 不懂技術(shù)的人))

將錯誤報告寫入日志中
一、指定錯誤報告 error_reporting = E_LL
二、關(guān)閉錯誤輸出 display_errors = Off
三、開啟錯誤日志功能 log_errors = On

1. 默認如果不指定錯誤日志位置,則默認寫WEB服務器的日志中
2. 為error_log選項指定 一個文件名(可寫)
3. 寫入到操作系統(tǒng)日志中error_log=syslog

以下代碼示例

當然php還提供了函數(shù)error_get_last()來獲得錯誤信息

函數(shù)定義和用法

error_get_last()函數(shù)獲取最后發(fā)生的錯誤。該函數(shù)以數(shù)組的形式返回最后發(fā)生的錯誤。返回的數(shù)組包含 4 個鍵和值: [type] - 錯誤類型 [message] - 錯誤消息 [file] - 發(fā)生錯誤所在的文件 [line] - 發(fā)生錯誤所在的

小例子:

輸出:
Array ( [type] => 8 [message] => Undefined variable: test [file] => D:\www\test.php [line] => 2 )
所以這樣我們也很方便了。。。這樣是不是對調(diào)試程序和排查錯誤的時候很有幫助呢?

這些錯誤報告級別是錯誤處理程序旨在處理的錯誤的不同的類型:

常量 描述
2 E_WARNING 非致命的 run-time 錯誤。不暫停腳本執(zhí)行。
8 E_NOTICE

Run-time 通知。

腳本發(fā)現(xiàn)可能有錯誤發(fā)生,但也可能在腳本正常運行時發(fā)生。

256 E_USER_ERROR 致命的用戶生成的錯誤。這類似于程序員使用 PHP 函數(shù) trigger_error() 設置的 E_ERROR。
512 E_USER_WARNING 非致命的用戶生成的警告。這類似于程序員使用 PHP 函數(shù) trigger_error() 設置的 E_WARNING。
1024 E_USER_NOTICE 用戶生成的通知。這類似于程序員使用 PHP 函數(shù) trigger_error() 設置的 E_NOTICE。
4096 E_RECOVERABLE_ERROR 可捕獲的致命錯誤。類似 E_ERROR,但可被用戶定義的處理程序捕獲。(參見 set_error_handler())
8191 E_ALL

所有錯誤和警告,除級別 E_STRICT 以外。

(在 PHP 6.0,E_STRICT 是 E_ALL 的一部分)

php異常處理機制

定義:

異常處理: 意外,是在程序運行過程中發(fā)生的意料這外的事,使用異常改變腳本正常流程

語法格式:

try
{ //...}
catch(Exception $e)
{ //...}

PHP中try{}catch{}是異常處理.

將要執(zhí)行的代碼放入TRY塊中,如果這些代碼執(zhí)行過程中某一條語句發(fā)生異常,則程序直接跳轉(zhuǎn)到CATCH塊中,由$e收集錯誤信息和顯示.

PHP中try{}catch{}語句

為了進一步處理異常,我們需要使用PHP中try{}catch{}----包括Try語句和至少一個的catch語句。任何調(diào)用 可能拋出異常的方法的代碼都應該使用try語句。Catch語句用來處理可能拋出的異常。

例子:

我寫一段代碼:

自己定義一個異常類
作用:就是寫一個或多個方法解決當發(fā)生這個異常時的處理方式
1. 自己定義異常類,必須是Exception(內(nèi)置類)的子類, 可以查看PHP手冊里面Exception(內(nèi)置類)的使用方法
2. Exception類中的只有構(gòu)造方法和toString()可以重寫, 其它都final

getMessage()."
";             //getMessage() 是PHP里面內(nèi)置的方法,可以直接調(diào)用

    $file=$e->open();  


}

下面將代碼進行整理以及多個異常處理方法:


								
分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國增值電信業(yè)務經(jīng)營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網(wǎng)站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網(wǎng)安 舉報有獎  警警  手機打開網(wǎng)站