最近項目上線出現了問題,大量用戶正在使用,找了半天原因,最終還是依靠打印打印日志文件,找到了錯誤出現的位置!所以,開發過程中,對可能出現錯誤的地方,打印日志是非常非常重要的一件事情!下面我就來詳細講下!
1、用到的函數file_put_contents()file_put_contents() 函數把一個字符串寫入文件中。
該函數訪問文件時,遵循以下規則:
如果設置了 FILE_USE_INCLUDE_PATH,那么將檢查 *filename* 副本的內置路徑
如果文件不存在,將創建一個文件
打開文件
如果設置了 LOCK_EX,那么將鎖定文件
如果設置了 FILE_APPEND,那么將移至文件末尾。否則,將會清除文件的內容
向文件中寫入數據
關閉文件并對所有文件解鎖
如果成功,該函數將返回寫入文件中的字符數。如果失敗,則返回 False。
語法int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )參數描述file必需。規定要寫入數據的文件。如果文件不存在,則創建一個新文件。data必需。規定要寫入文件的數據??梢允亲址?、數組或數據流。mode可選。規定如何打開/寫入文件??赡艿闹担?
FILE_USE_INCLUDE_PATH
FILE_APPEND
LOCK_EX
context可選。規定文件句柄的環境。context 是一套可以修改流的行為的選項。2、封裝日志文件makeLog()方法?php * 聲明文件日志 * @param string $type * @param string $datahtml' target='_blank'>public function makeLog($type= ,$data= ){ if(!empty($type)){ // DIR_LOG = /home/www/ymd/public/ymd/logs/ @file_put_contents(C( DIR_LOG ).$type. / .$type. _ .date( YmdH ). .txt ,$data. /n ,FILE_APPEND);//調用文件日志 $this- makeLog( ymd , 日志記錄
相關推薦:
php如何實現保存網絡圖片(代碼)
php中二維數組縱向合并 橫向合并的代碼實現
以上就是PHP如何封裝打印日志的方法(附代碼)的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答