人人人妻人人人妻人人人,99精品国产综合久久久久五月天 ,欧美白人最猛性XXXXX,日韩AV无码免费播放

News新聞

業(yè)界新聞動(dòng)態(tài)、技術(shù)前沿
Who are we?

您的位置:首頁(yè)      樂(lè)道系統(tǒng)FAQ      php異常處理使用示例

php異常處理使用示例

標(biāo)簽: 發(fā)布日期:2014-02-25 00:00:00 472

這篇文章主要介紹了php異常處理使用示例,代碼說(shuō)明了普通錯(cuò)誤和致命錯(cuò)誤捕獲及處理的方法,需要的朋友可以參考下

<?php
//禁止錯(cuò)誤輸出
error_reporting(0);
//設(shè)置錯(cuò)誤處理器
set_error_handler('errorHandler');
register_shutdown_function('fatalErrorHandler');
class Test{
public function index(){
//這里發(fā)生一個(gè)警告錯(cuò)誤,出發(fā)errorHandler 
echo $undefinedVarible;
}
}
function errorHandler($errno,$errstr,$errfile,$errline){
 $arr = array(
 '['.date('Y-m-d h-i-s').']',
 'http://www.baidu.com',
 '|',
 $errstr,
 $errfile,
 'line:'.$errline,
 );
 //寫入錯(cuò)誤日志
//格式 :  時(shí)間 uri | 錯(cuò)誤消息 文件位置 第幾行
 error_log(implode(' ',$arr)."\r\n",3,'./test.txt','extra');
 echo implode(' ',$arr)."\r\n";
}

 

//捕獲fatalError
function fatalErrorHandler(){
 $e = error_get_last();
 switch($e['type']){
 case E_ERROR:
 case E_PARSE:
 case E_CORE_ERROR:
 case E_COMPILE_ERROR:
 case E_USER_ERROR:
  errorHandler($e['type'],$e['message'],$e['file'],$e['line']);
  break; 
}
}
$test = new Test();
////這里發(fā)生一個(gè)警告錯(cuò)誤,被errorHandler 捕獲
$test->index();
//發(fā)生致命錯(cuò)誤,腳本停止運(yùn)行觸發(fā) fatalErrorHandler 
$test = new Tesdt();
$test->index();