首頁 >後端開發 >PHP問題 >php報錯誤自己記錄

php報錯誤自己記錄

尚
原創
2019-11-01 14:52:272458瀏覽

php報錯誤自己記錄

我們通常是透過nginx的錯誤日誌來分析分錯的,也就是我們在各個server中定義的error_log。下面我們來看看php自己記錄報錯的方法。

php報錯自己記錄:

#我們只需要在程式中自訂一個錯誤日誌函數即可,然後,在程式中進行對應的判斷,如果程式沒執行成功,則呼叫記錄錯誤日誌函數。

自訂錯誤日誌格式,並進行記錄日誌:

1、程式中編寫對應程式

<?php
function set_debug($uid = &#39;&#39;, $order = &#39;&#39;, $data = &#39;&#39;){
    $error_path = &#39;order.error.html&#39;;//自定义错误日志保存的文件和路径
    $error_data = array(
        &#39;time&#39; => date("Y-m-d H:i",time()),//记录错误发生的时间
        &#39;error&#39; => urlencode($data),//防止中文乱码
        &#39;order&#39;=> $order,//记录订单
        &#39;user_name&#39;=> $uid,//记录当前用户
    );
    //判断文件大小,选择追加还是重新写入,注意之前防止乱码用了urlencode
    if( abs(filesize($error_path)) < 10240 ){
        @file_put_contents($error_path, urldecode(json_encode($error_data))."<br>",FILE_APPEND);
    }else{
        @file_put_contents($error_path, urldecode(json_encode($error_data)) ."<br>");
    };
}

//模拟订单录入错误时,将日志记录到错误日志中
$uid = 1000070;//模拟用户uid
$order = 2132215641000070;//模拟用户订单号
if (true)  {
    set_debug($uid,$order,&#39;订单录入失败&#39;);
}

2、建立錯誤文件,並賦予權限

cd /data/www

touch order.error.html

chmod 777 order.error.html 

#建議:php伺服器

以上是php報錯誤自己記錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn