麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 語(yǔ)言 > PHP > 正文

php中錯(cuò)誤處理操作實(shí)例分析

2024-05-05 00:11:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了php中錯(cuò)誤處理操作。分享給大家供大家參考,具體如下:

錯(cuò)誤觸發(fā)

有2種觸發(fā):

系統(tǒng)觸發(fā)E_NOTICE:提示性錯(cuò)誤,比如使用不存在的變量或常量
E_WARNING:警告性錯(cuò)誤,比如include載入一個(gè)不存在的文件
E_ERROR:致命錯(cuò)誤,導(dǎo)致程序無(wú)法執(zhí)行后續(xù)語(yǔ)句,比如調(diào)用一個(gè)不存在的函數(shù)

自定義觸發(fā):
語(yǔ)法形式:trigger_error("錯(cuò)誤提示信息內(nèi)容",3種用戶(hù)錯(cuò)誤代號(hào)之一);
其中觸發(fā)了用戶(hù)的致命錯(cuò)誤(E_USER_ERROR),也會(huì)終止程序的后續(xù)執(zhí)行

錯(cuò)誤顯示

是否顯示錯(cuò)誤報(bào)告(display_errors)

有2種來(lái)設(shè)定是否顯示:

1.在php.ini文件中,設(shè)定display_erros的值,為on(顯示),或?yàn)閛ff(不顯示),開(kāi)發(fā)階段應(yīng)該為on,顯示錯(cuò)誤信息

2.直接在php腳本文件中設(shè)定ini_set("display_errors",0);//不顯示錯(cuò)誤報(bào)告,1為顯示
顯示哪些級(jí)別的錯(cuò)誤報(bào)告(error_reporting)
前提是"display_errors"設(shè)置為on(或1),表示可以顯示
1.在php.ini文件中 error_reporting=E_ALL | E_STRICT這個(gè)值代表所有錯(cuò)誤

php,錯(cuò)誤處理

php,錯(cuò)誤處理

  • 在當(dāng)前的腳本代碼中設(shè)置
ini_set("error_reporting",E_NOTICE); //就顯示該一個(gè)級(jí)別的錯(cuò)誤ini_set("error_reporting",E_NOTICE| E_WARNING); //顯示該2個(gè)級(jí)別的錯(cuò)誤//禁用錯(cuò)誤報(bào)告error_reporting(0);//報(bào)告運(yùn)行時(shí)錯(cuò)誤error_reporting(E_ERROR | E_WARNING | E_PARSE);//報(bào)告所有錯(cuò)誤error_reporting(E_ALL);

錯(cuò)誤日志記錄

錯(cuò)誤日志其實(shí)就是錯(cuò)誤報(bào)告,只是會(huì)寫(xiě)入文件中,此時(shí)就稱(chēng)為錯(cuò)誤日志

是否記錄log_errors

php.ini中:log_errors=on或off 腳本中:ini_set("log_erros",1);或0
補(bǔ)充: ini_set("php配置項(xiàng)",值);//用于腳本中設(shè)置php.ini中某項(xiàng)的值
$v=ini_get("php配置項(xiàng)");//用于獲取php.ini中某項(xiàng)的值

記錄到哪里error_log

一般就只有2個(gè)寫(xiě)法:

1.直接寫(xiě)一個(gè)文件名,系統(tǒng)會(huì)自動(dòng)在每個(gè)文件夾下都建立該文件名,并用其記錄該文件夾下的所有網(wǎng)頁(yè)文件發(fā)生的錯(cuò)誤信息ini_set("error_log","my_error.txt");//記錄到該文件

2.使用一個(gè)特殊的名字"syslog",則所有的錯(cuò)誤信息都會(huì)記錄到系統(tǒng)的"日志文件中".系統(tǒng)日志文件在這里:控制面板》管理工具》事件查看器》window日志》應(yīng)用程序:

ini_set("error_log","syslog");//記錄到系統(tǒng)日志中

自定義錯(cuò)誤處理器

讓系統(tǒng)不要去處理錯(cuò)誤了,完全由開(kāi)發(fā)者對(duì)錯(cuò)誤進(jìn)行處理:顯示和記錄

第一步:設(shè)定要用于處理錯(cuò)誤的函數(shù)名:set_error_handler("f1");

第二步:去定義該函數(shù)function f1() {這里可以寫(xiě)任意代碼,正常去顯示錯(cuò)誤報(bào)告,和記錄}

例:

set_error_handler("my_error_handler");//定義該函數(shù),需要定義4個(gè)形參分別代表$errCode:代表錯(cuò)誤代號(hào)(級(jí)別) $errMsg:代表錯(cuò)誤//信息內(nèi)容 $errFile:代表錯(cuò)誤的文件名 $errLine:代表錯(cuò)誤的行號(hào),一旦發(fā)生錯(cuò)誤自動(dòng)調(diào)用function my_error_handler($errCode,$errMsg,$errFile,$errLine) {  $str="";  $str .="<p><font color='red'>大事不好,發(fā)生錯(cuò)誤:</font>";  $str .="<br />錯(cuò)誤代號(hào)為:".$errCode;  $str .="<br />錯(cuò)誤內(nèi)容為:".$errMsg;  $str .="<br />錯(cuò)誤代號(hào)為:".$errFile;  $str .="<br />錯(cuò)誤代號(hào)為:".$errLine;  $str .="<br />發(fā)生時(shí)間為:".date("Y-d-m H:i:s");  $str .="</p>";  echo $str; //輸出該構(gòu)建完整的錯(cuò)誤處理結(jié)果,也可以將改內(nèi)容寫(xiě)到某個(gè)文件中去}

異常拋出

function checkAge($age){  if($age>100) throw new Exception('年齡不能大于100');  echo '年齡符合規(guī)范';}//如果年齡大于100,拋出異常try{  checkAge(200);}catch(Exception $e){  echo $e->getMessage();}

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到PHP教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 欧美城网站地址 | 毛片区| 在线看一区二区三区 | 国产精品成人久久 | 女人裸体让男人桶全过程 | 99精品视频在线免费观看 | 欧美综合在线观看视频 | 欧洲成人一区 | 一区二区久久久久草草 | 国产精品久久久久国产精品三级 | 国产亚洲精品久久午夜玫瑰园 | 视频一区二区中文字幕 | 91福利影视 | 亚洲网站免费观看 | 亚洲一区二区三区日本久久九 | 欧美一级淫片免费播放口 | 狠狠久久伊人中文字幕 | 7777网站| 日本残忍极度灌浣肠视频 | 成年人视频在线免费播放 | 91 免费看片| 日本a在线观看 | 中文字幕11 | 五月天影院,久久综合, | 国产成人小视频在线观看 | 一级免费大片 | 在线高清中文字幕 | www亚洲免费 | 亚洲一区二区三区视频 | 99影视电影电视剧在线播放 | 一级免费黄视频 | 5xx免费看 | 久久手机在线视频 | 欧美亚洲一级 | 成年性羞羞视频免费观看无限 | 韩国精品久久久 | 国产成人高清在线 | 国产一区二区三区四区五区在线 | 亚洲欧美一区二区三区在线观看 | 成人做爰高潮片免费视频韩国 | 免费三级大片 |