首頁 > 後端開發 > php教程 > php實作基於自訂函數記錄log日誌方法

php實作基於自訂函數記錄log日誌方法

墨辰丷
發布: 2023-03-26 19:52:01
原創
1237 人瀏覽過

這篇文章主要介紹了php實作基於自訂函數記錄log日誌方法,涉及php針對檔案、目錄及錯誤日誌相關操作技巧,需要的朋友可以參考下

/**
 * 记录错误日志
 * @param 日志内容 $res
 */
function save_log($res) {
  $err_date = date("Ym", time());
  //$address = '/var/log/error';
  $address = './error';
  if (!is_dir($address)) {
    mkdir($address, 0700, true);
  }
  $address = $address.'/'.$err_date . '_error.log';
  $error_date = date("Y-m-d H:i:s", time());
  if(!empty($_SERVER['HTTP_REFERER'])) {
    $file = $_SERVER['HTTP_REFERER'];
  } else {
    $file = $_SERVER['REQUEST_URI'];
  }
  if(is_array($res)) {
    $res_real = "$error_date\t$file\n";
    error_log($res_real, 3, $address);
    $res = var_export($res,true);
    $res = $res."\n";
    error_log($res, 3, $address);
  } else {
    $res_real = "$error_date\t$file\t$res\n";
    error_log($res_real, 3, $address);
  }
}
登入後複製

#var_export() 方法詳解:

var_export – 輸出或傳回一個變數的字串表示

##說明:

#mixed var_export ( mixed expression , bool )

此函數傳回關於傳遞給該函數的變數的結構訊息,它和var_dump() 類似,不同的是其傳回的表示是合法的PHP 碼。

您可以將函數的第二個參數設為 TRUE,從而傳回變數的表示。

EG:

var_export(array('a','b',array('aa','bb','cc'))) 這種與VAR_DUMP沒什麼區別;

$var =var_export(array('a','b',array('aa','bb','cc')),TRUE)
登入後複製

加上TRUE後,不會再印出來,

而是給了一個變量,這樣就可以直接輸出;

echo $var;
登入後複製

此時輸出來的形式與

var_dump()列印的相似。

相關推薦:

PHP自訂函數判斷是否為Get/Post/Ajax提交的方法詳解

#PHP自訂函數判斷是否為Get、Post及Ajax提交的方法

關於php自定義函數及內部函數講解

以上是php實作基於自訂函數記錄log日誌方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板