站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        php怎么將錯誤日志寫入文件

        php將錯誤日志寫入文件的方法:1、在配置文件php.ini中,搜索“error_log”項,配置日志文件的路徑;2、利用error_log()函數(shù)將錯誤日志寫入配置好的日志文件中,語法“error_log(需要記錄的錯誤信息,0);”。

        php怎么將錯誤日志寫入文件

        本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦

        如果想使用自己指定的文件記錄錯誤日志,一定要確保這個文件存放在文檔根目錄之外,以減少遭到攻擊的可能。并且該文件一定要讓 PHP 腳本具有寫權(quán)限。假設在 Linux 操作系統(tǒng)中,將 /usr/local/ 目錄下的 error.log 文件作為錯誤日志文件,并設置 Web 服務器進程用戶具有寫的權(quán)限。然后在 PHP 的配置文件中,將 error_log 指令的值設置為這個錯誤日志文件的絕對路徑。

        需要將 php.ini 中的配置指令做如下修改:

        error_reporting  =  E_ALL                             // 將會向PHP報告發(fā)生的每個錯誤   display_errors = Off                                     // 不顯示滿足上條 指令所定義規(guī)則的所有錯誤報告   log_errors = On                                           // 決定日志語句記錄的位置   log_errors_max_len = 1024                         // 設置每個日志項的最大長度   error_log = E:/php_log/php_error.log         // 指定產(chǎn)生的錯誤報告寫入的日志文件位置

        PHP 的配置文件按上面的方式設置完成以后,并重新啟動 Web 服務器。這樣,在執(zhí)行 PHP 的任何腳本文件時,產(chǎn)生的所有錯誤報告都不會在瀏覽器中顯示,而會記錄在自己指定的錯誤日志 E:/php_log/php_error.log 中。

        此外,不僅可以記錄滿足 error_reporting 所定義規(guī)則的所有錯誤,而且還可以使用 PHP 中的 error_log() 函數(shù)把錯誤信息發(fā)送到 web 服務器的錯誤日志或者到一個文件里。

        error_log() 函數(shù)的原型如下所示:

        error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] ) : bool

        參數(shù)說明如下:

        • $message:需要記錄的錯誤信息;
        • $message_type:設置錯誤應該發(fā)送到何處??赡艿男畔㈩愋陀幸韵聨讉€:
          • 0:(默認值)將 $message 發(fā)送到 PHP 的系統(tǒng)日志,使用操作系統(tǒng)的日志機制或者一個文件,取決于配置文件中 error_log 設置了什么;
          • 1:將 $message 發(fā)送到參數(shù) $destination 設置的郵件地址。 第四個參數(shù) $extra_headers 只有在這個類型里才會被用到;
          • 2:(已廢棄)不再是一個選項;
          • 3:$message 被發(fā)送到位置為 $destination 的文件里。字符 $message 不會默認被當做新的一行;
          • 4:將 $message 直接發(fā)送到 SAPI 的日志處理程序中。
        • $destination:目標,也就是錯誤消息被發(fā)送到的目的地。它的含義描述于以上,由 $message_type 參數(shù)所決定;
        • $extra_headers:額外的頭。當 $message_type 設置為 1 的時候使用。 該信息類型使用了 mail() 的同一個內(nèi)置函數(shù)。

        【示例】以登入 Mysql 數(shù)據(jù)庫為例,當?shù)侨胧r記錄錯誤信息。

        <?php     $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");     if (!$link) {         error_log('Mysql 數(shù)據(jù)庫連接失敗!',0);         exit();     } ?>

        運行上面的代碼,會在 php.ini 配置文件中 error_log 一項所設置的目錄中生成對應的錯誤日志文件,文件內(nèi)容如下:

        [08-May-2020 13:17:31 PRC] PHP Warning:  mysqli_connect(): (HY000/1045): Access denied for user 'my_user'@'localhost' (using password: YES) in D:WWWindex.php on line 2 [08-May-2020 13:17:31 PRC] Mysql 數(shù)據(jù)庫連接失敗!

        推薦學習:《PHP視頻教程》

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 国产人妖乱国产精品人妖| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 国内精品久久国产大陆| 自拍偷自拍亚洲精品被多人伦好爽| 成人精品视频成人影院| 久久精品国产影库免费看| 久久精品aⅴ无码中文字字幕重口| 欧美成人精品欧美一级乱黄一区二区精品在线| 欧美精品人爱c欧美精品| 国产精品毛片VA一区二区三区| 亚洲国产精品自在拍在线播放| 精品久久久久久国产免费了| 97精品在线播放| 欧美精品/日韩精品/国产精品| 99精品国产丝袜在线拍国语| 日韩精品人妻系列无码专区免费| 久久久久久久久久久免费精品| 丰满人妻熟妇乱又伦精品劲| 91久久福利国产成人精品| 精品国产日产一区二区三区| 国产精品成人va| 国产精品视频一区二区三区经| 国产成人精品日本亚洲专一区| 国产精品网站在线观看免费传媒| 精品无码AV无码免费专区| 人人妻人人澡人人爽精品日本| 亚洲AV乱码久久精品蜜桃| 午夜精品射精入后重之免费观看 | 精品久久久久中文字幕一区| 国产精品国产三级在线高清观看 | 亚洲午夜成人精品电影在线观看| 精品国产成人在线| 久久精品国产一区二区三区| 久久国产精品二国产精品| 麻豆精品视频在线观看| 久久亚洲国产精品123区| 免费视频成人国产精品网站 | 久久亚洲国产精品五月天婷| 四虎国产精品成人免费久久| 亚洲午夜精品久久久久久浪潮| 亚洲国产精品无码久久久秋霞2|