国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - PHP教程 - php中錯(cuò)誤處理操作實(shí)例分析

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

2021-08-15 20:41cscsdvdsv PHP教程

這篇文章主要介紹了php中錯(cuò)誤處理操作,結(jié)合實(shí)例形式分析了php錯(cuò)誤的觸發(fā)、處理、日志記錄等相關(guān)操作技巧,需要的朋友可以參考下

本文實(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種用戶錯(cuò)誤代號(hào)之一);
其中觸發(fā)了用戶的致命錯(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(不顯示),開發(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ò)誤處理操作實(shí)例分析

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

  • 在當(dāng)前的腳本代碼中設(shè)置
?
1
2
3
4
5
6
7
8
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ì)寫入文件中,此時(shí)就稱為錯(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è)寫法:

1.直接寫一個(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)用程序:

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

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

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

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

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

例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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)容寫到某個(gè)文件中去
}

異常拋出

?
1
2
3
4
5
6
7
8
9
10
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ì)有所幫助。

原文鏈接:https://blog.csdn.net/xiajiandong1024/article/details/71106076

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 中文字幕在线观看一区二区三区 | 国产乱视频 | av免费资源 | 黄色免费网站在线观看 | 国色天香成人网 | 日韩美一级片 | 欧美午夜一区二区三区免费大片 | 黄色毛片免费网站 | 韩国精品一区二区 | 黄色影院 | 91在线视频观看 | 在线观看日韩 | 欧美综合婷婷 | 亚洲狠狠爱一区二区三区 | 午夜精品久久久久久久 | 人人干天天干 | 九九久久免费 | 亚洲精品久久久久久一区二区 | 色网站在线视频 | 五月激情综合网 | 欧美大片免费高清观看 | 在线观看91 | 免费观看www7722午夜电影 | 久久香蕉国产 | 欧美日韩一区二区视频在线观看 | 免费午夜电影 | 久草免费在线 | 久久中文字幕精品 | 97精品久久 | 国产高清视频一区 | 国产欧美日韩综合精品一区二区 | 国精产品99永久一区一区 | 欧美日韩精品一区二区三区四区 | 色站综合 | 操久久 | 国产综合久久久 | 精品国产欧美一区二区 | 成人免费网站在线观看 | 四季久久免费一区二区三区四区 | 欧美视频三区 | 国产精品一区二区三区免费 |