php輸出日志的實現


php輸出日志的實現

思想:在想要輸出log日志的地方,使用php的寫入文件函數,把數據寫入到事先定義好的文件中。

php代碼如下:
//輸出日志
    public function outputLog() {
        logOutput(time());
        sleep(3);
        $arr = array("k1" => "v1", "k2" => "v2");
        logOutput($arr);

        $this->display();
    }
logOutput()函數:
/**
 * @param  string,array  $data 需要輸出到日志中的數據
 * @return null 
 */
function logOutput($data) {
    //數據類型檢測
    if (is_array($data)) {
        $data = json_encode($data);
    }
    $filename = "./log/".date("Y-m-d").".log";
    $str = date("Y-m-d H:i:s")."   $data"."\n";
    file_put_contents($filename, $str, FILE_APPEND|LOCK_EX);
    return null;
}

2016-10-24_184658
2016-10-24_184644

file_put_contents() 函數把一個字符串寫入文件中。
與依次調用 fopen(),fwrite() 以及 fclose() 功能一樣。
語法
file_put_contents(file,data,mode,context)
參數	描述
file	必需。規定要寫入數據的文件。如果文件不存在,則創建一個新文件。
data	可選。規定要寫入文件的數據。可以是字符串、數組或數據流。
mode	可選。規定如何打開/寫入文件。可能的值:
        FILE_USE_INCLUDE_PATH
        FILE_APPEND    追加數據而不是覆蓋
        LOCK_EX    寫入數據時,鎖住文件,防止其他人對文件的改動
context	可選。規定文件句柄的環境。(不懂何用)
        context 是一套可以修改流的行為的選項。若使用 null,則忽略。
  • 意義:
  • 在可能出錯的地方,進行調試時,輸出錯誤信息
  • 輸出變量,進行調試,可以避免平常的var_dump、dump函數打印一長串的數據,影響頁面布局


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM