最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

分享一個php 的異常處理程序

 更新時間:2014年06月22日 11:01:21   投稿:hebedich  
給大家分享一個php的異常處理程序,功能很簡單當(dāng)發(fā)生重大錯誤時,寫日志并友好提示用戶,用處卻很大,對不對

直接上代碼

<?php
//exceptionHandle.php xiecongwen 20140620
//define('DEBUG',true);
/**
* Display all errors when APPLICATION_ENV is development.
*/
if (defined('DEBUG')) {
error_reporting(E_ALL);
ini_set("display_errors", 1);
}
if(!defined('DEBUG')){
/**
* 當(dāng)發(fā)生重大錯誤時 寫日志 并友好提示用戶
* (PS:只所以將代碼寫在這里,是因?yàn)樵谄渌胤阶詴r,出現(xiàn)問題無法調(diào)用配置函數(shù).待完善...)
*/
function shutdownHandler()
{
/**
* 寫日志 此處直接寫在根目錄下shutdownlog.txt
*/
$lasterror = error_get_last();
if($lasterror){
$error = strval(date("Y-m-d h:i:s")).'=>'."[SHUTDOWN] lvl:" . $lasterror['type'] . " | msg:" . $lasterror['message'] . " | file:" . $lasterror['file'] . " | ln:" . $lasterror['line']."\n";
file_put_contents('./log/'.date("Ymd").'shutdownlog.txt',$error,FILE_APPEND);
//友好提示用戶
ob_end_clean();
die('對不起,我出錯了!');
}
}
register_shutdown_function('shutdownHandler');
}
if(!defined('DEBUG')){
 
function errorHandler($errno, $errstr = '', $errfile = '', $errline = 0)
{
//寫日志
$exception = new \ErrorException($errstr, 0, $errno, $errfile, $errline);
$msg = strval(date("Y-m-d h:i:s")).'=>'.'Type:'.getErrTypeName($errno).' '.getMsg($exception);
file_put_contents('./log/'.date("Ymd").'error.txt',$msg,FILE_APPEND);
switch ($errno)
{
case E_NOTICE:return ;
case E_DEPRECATED:return;
}
throw $exception;
}
function getErrTypeName($errno)
{
switch ($errno)
{
case E_NOTICE:return 'E_NOTICE' ;
case E_DEPRECATED:return 'E_DEPRECATED';
default:return $errno;
}
}
function exceptionHandler($ex)
{
$msg = strval(date("Y-m-d h:i:s")).'=>'.getMsg($ex);
file_put_contents('./log/'.date("Ymd").'exception.txt',$msg,FILE_APPEND);
}
function getMsg($exception)
{
//獲取最準(zhǔn)確的異常 
while($exception->getPrevious())$exception = $exception->getPrevious();
$msg = ' Message: '.$exception->getMessage();
$msg .= ' File: '.$exception->getFile().':'.$exception->getLine()."\n";
return $msg;
}
set_error_handler('errorHandler',E_ALL);
set_exception_handler('exceptionHandler');
}
?>

相關(guān)文章

  • PHP采集類snoopy詳細(xì)介紹(snoopy使用教程)

    PHP采集類snoopy詳細(xì)介紹(snoopy使用教程)

    這篇文章主要介紹了PHP采集類snoopy詳細(xì)介紹,PHP采集類snoopy的詳細(xì)使用教程,需要的朋友可以參考下
    2014-06-06
  • Laravel中schedule調(diào)度的運(yùn)行機(jī)制

    Laravel中schedule調(diào)度的運(yùn)行機(jī)制

    本文主要介紹了Laravel中schedule調(diào)度的運(yùn)行機(jī)制,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • CI框架AR操作(數(shù)組形式)實(shí)現(xiàn)插入多條sql數(shù)據(jù)的方法

    CI框架AR操作(數(shù)組形式)實(shí)現(xiàn)插入多條sql數(shù)據(jù)的方法

    這篇文章主要介紹了CI框架AR操作實(shí)現(xiàn)插入多條sql數(shù)據(jù)的方法,結(jié)合簡單實(shí)例形式分析了CI框架使用數(shù)組實(shí)現(xiàn)多條數(shù)據(jù)插入的方法,需要的朋友可以參考下
    2016-05-05
  • 判斷、添加和刪除WordPress置頂文章的相關(guān)PHP函數(shù)小結(jié)

    判斷、添加和刪除WordPress置頂文章的相關(guān)PHP函數(shù)小結(jié)

    這篇文章主要介紹了判斷、添加和刪除WordPress置頂文章的相關(guān)PHP函數(shù)小結(jié),需要的朋友可以參考下
    2015-12-12
  • PHP內(nèi)核探索之變量

    PHP內(nèi)核探索之變量

    php變量由變量名,類型,內(nèi)容等部分組成,本文給大家分享php內(nèi)核探索之變量,對php內(nèi)核探索相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • centos 7系統(tǒng)下安裝laravel運(yùn)行環(huán)境的步驟詳解

    centos 7系統(tǒng)下安裝laravel運(yùn)行環(huán)境的步驟詳解

    Laravel框架對于開發(fā)網(wǎng)頁應(yīng)用來說是一個絕好的的工具,最近正好又在學(xué)習(xí)linux系統(tǒng),所以下面這篇文章主要給大家介紹了在centos 7系統(tǒng)下安裝laravel運(yùn)行環(huán)境的步驟,需要的朋友可以參考借鑒,下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • ECSHOP在PHP5.5及高版本上報錯的解決方法

    ECSHOP在PHP5.5及高版本上報錯的解決方法

    程序不斷的更新?lián)Q代,php版本也在不斷的推陳出新,自從php7.0推出,php5.5版本已落伍,但是目前使用php5.5的也不少,接下來,小編給大家整理關(guān)于ECSHOP在PHP5.5及高版本上報錯的解決方法,小伙伴們一起來學(xué)習(xí)吧
    2015-08-08
  • PHP面向?qū)ο笾衝ew self()與 new static()的區(qū)別淺析

    PHP面向?qū)ο笾衝ew self()與 new static()的區(qū)別淺析

    new static()是在PHP5.3版本中引入的新特性,無論是new static()還是new self(),都是new了一個新的對象。下面這篇文章主要給大家介紹了關(guān)于PHP面向?qū)ο笾衝ew self()與 new static()的區(qū)別,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • 通過源碼解析Laravel的依賴注入

    通過源碼解析Laravel的依賴注入

    這篇文章主要給大家介紹了如何通過源碼解析Laravel的依賴注入的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • php生成短網(wǎng)址示例

    php生成短網(wǎng)址示例

    這篇文章主要介紹了php生成短網(wǎng)址示例,需要的朋友可以參考下
    2014-05-05

最新評論

临西县| 龙山县| 湖北省| 威远县| 始兴县| 横山县| 福鼎市| 翁牛特旗| 温宿县| 弥渡县| 景洪市| 平原县| 德惠市| 江津市| 东丰县| 宜阳县| 拉孜县| 嘉峪关市| 海盐县| 衡阳市| 监利县| 三台县| 南江县| 江口县| 平果县| 大厂| 秀山| 景宁| 兴仁县| 华容县| 金乡县| 云林县| 济宁市| 龙井市| 广丰县| 南开区| 乐山市| 固镇县| 林西县| 灵山县| 长岭县|