国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP捕捉錯誤

lbool / 1016人閱讀

摘要:捕捉錯誤禁止錯誤輸出設置錯誤處理器在腳本結束時運行的函數錯誤處理錯誤代碼錯誤信息錯誤文件錯誤行號捕捉致命錯誤這里發生一個警告錯誤,出發這里發生一個警告錯誤被捕獲發生致命錯誤,腳本停止運行觸發打開后輸出

PHP捕捉錯誤

禁止錯誤輸出

error_reporting(0);

設置錯誤處理器

set_error_handler("errorHandler");

在腳本結束時運行的函數

register_shutdown_function("fatalErrorHandler");

錯誤處理

/**
 * @param int    $err_no      錯誤代碼
 * @param string $err_msg  錯誤信息
 * @param string $err_file    錯誤文件
 * @param int    $err_line     錯誤行號
 * @return string
 */
function errorHandler($err_no = 0, $err_msg = "", $err_file = "", $err_line = 0)
{
    $log = [
        "[".date("Y-m-d h-i-s")."]",
        "|",
        $err_no,
        "|",
        $err_msg,
        "|",
        $err_file,
        "|",
        $err_line
    ];
    $log_path = "./test.txt";
    error_log(implode(" ",$log)."
",3, $log_path);
}

捕捉致命錯誤

function fatalErrorHandler() {
    $e = error_get_last();

    var_export($e);
    switch ($e["type"]) {
        case 1:
            errorHandler($e["type"], $e["message"], $e["file"], $e["line"]);
            break;
    }
}
class DemoClass_1
{
    public function index()
    {
        //這里發生一個警告錯誤,出發errorHandler
        echo $undefinedVarible;
    }
}

這里發生一個警告錯誤,被errorHandler 捕獲

$demo_1 = new DemoClass_1();
$demo_1->index();

發生致命錯誤,腳本停止運行觸發 fatalErrorHandler

$demo_2 = new DemoClass_2();
$demo_2->index();

打開test.txt后 輸出:

[2018-06-12 05-49-11] | 8 | Undefined variable: undefinedVarible | /Users/darry/htdocs/test.php | 57
[2018-06-12 05-49-11] | 1 | Uncaught Error: Class "DemoClass_2" not found in /Users/darry/htdocs/test.php:67
Stack trace:
#0 {main}
  thrown | /Users/darry/htdocs/test.php | 67

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/28813.html

相關文章

  • 如何處理 PHP錯誤與異常(筆記)

    摘要:又或者反過來,把錯誤當成異常來處理。當然,我猜它的目的,應該也是為了能實現錯誤與異常之間優雅轉換而添加的。至此,錯誤與異常的學習基本完畢。 這話題已經沒有什么新意了,這里只是做做筆記,作為思路的一種整理,也以便后續忘了可以回來這里查找。 錯誤 以下是 PHP 最常見的幾種錯誤: // E_NOTICE echo $a; // E_WARNING echo 100 / 0; clas...

    kyanag 評論0 收藏0
  • PHP捕捉錯誤

    摘要:捕捉錯誤禁止錯誤輸出設置錯誤處理器在腳本結束時運行的函數錯誤處理錯誤代碼錯誤信息錯誤文件錯誤行號捕捉致命錯誤這里發生一個警告錯誤,出發這里發生一個警告錯誤被捕獲發生致命錯誤,腳本停止運行觸發打開后輸出 PHP捕捉錯誤 禁止錯誤輸出 error_reporting(0); 設置錯誤處理器 set_error_handler(errorHandler); 在腳本結束時運行的函數 regis...

    XboxYan 評論0 收藏0
  • PHP 錯誤拋出及自定義處理

    摘要:錯誤拋出及自定義處理定義中的錯誤拋出及自定義處理指的是允許我們自定義拋出錯誤并且捕捉錯誤并進行處理。例如我們編寫一個的函數,而參數必須是一個整數否則觸發錯誤運行結果如下捕捉錯誤異常摘自官方文檔 PHP 錯誤拋出及自定義處理 定義 php中的錯誤拋出及自定義處理指的是允許我們自定義拋出錯誤并且捕捉錯誤并進行處理。類似于 面向對象語言中的throw 及 try...catch... 在ph...

    2450184176 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<