1. 程式人生 > >寫日誌

寫日誌

and 所屬組 strlen fclose 所有 modify 簡潔 urn chm

已下為我自己寫的一個寫日誌的類,比較簡潔。

<?php
class Log
{
    /**
     * @Purpose      :  寫日誌
     * @Method Name  :  writeLog()
     * @parameter     :  string $explain          錯誤說明
     *                  string $error_location    錯誤位置
     *                  string $dir               保存日誌的文件夾名
     * @return         :  (無)
     
*/ function writeLog($explain,$error_location,$dir){ if (empty($dir)) return false; $error_msg = ""; if(strlen($explain) != 0){ $error_msg .= ‘[‘.date("Y-m-d H:i:s",time()).‘ error_explain: ] ‘. $explain; } if(strlen($error_location) != 0){
$error_msg .= ‘ [ error_location: ] ‘. $error_location; } if(! is_dir($dir)){ mkdir($dir,0777); system("chown root.root {$dir} -R;chmod 777 {$dir} -R"); // 修改目錄所有者,所屬組和權限 } $file_name = date(‘Y-m-d‘,time()).‘.txt‘; $file_name = $dir.$file_name
; if(! $file_name == false){ system("chown root.root {$file_name} -R; chmod 777 {$file_name} -R"); $handle1 = fopen($file_name,‘w‘); fwrite($handle1,"//log file , please do not modify me! \n"); fwrite($handle1,‘//Created on ‘.date(‘M j, Y, G:i‘,time())."\n"); // 類似於這種格式 :Created on Jun 26,2017, 11:22 fclose($handle1); } if(is_file($file_name)){ $handle2 = fopen($file_name,‘a‘); fwrite($handle2,"$error_msg \n"); fclose($handle2); } /* 最後打印出來的日誌類似於這樣: //log file , please do not modify me! //Created on Jun 26, 2017, 11:34 [2017-06-26 11:34:29 error_explain: ] test_explain [ error_location: ] the error at E:\www\test\index.php line 55 */ } /** * @Purpose : 獲取錯誤所在位置 * @Method Name : getErrorLine() * @Parameters : string $line 行號 * @Return array : $error_line 錯誤所在位置 */ public function getErrorLine($line) { $error_line = __FILE__ . ‘ line ‘ . $line ; return ‘ ‘.$error_line; } } $Log = new Log(); $Log -> writeLog(‘test_explain‘,‘the error at‘ . $Log -> getErrorLine(__LINE__),‘E:/www/test/log/‘);

本文為原創作品,如有轉載請註明出處http://www.cnblogs.com/chrdai/p/7082146.html

寫日誌