1.首先在common.php公共函數文件下寫需要的公共函數(appalication/common.php文件下),在此文件下寫的函數可以在項目任意頁面直接調用
/** * 打印log日志 * @param 文件名 第幾行 日志內容 */ function wx_log($basename=null,$num=null,$msg=null) { //$msg = [2018-04-11 09:22:56]文件名:wxpay,第29行,[info]:日志信息 $msg = '['.date("Y-m-d H:i:s").']'.'文件名:'.$basename.',第'.$num.'行,'.'[info]:'.$msg; // 日志文件名:日期.txt $path = ROOT_PATH.DS.'public'. DS .'logs'. DS .date("Ymd").'.txt'; file_put_contents($path, $msg.PHP_EOL,FILE_APPEND); }
此時,我把日志文件放在了/public/logs/目錄下,日志文件名是按照當前日期的格式命名,方便排錯
2.調用:直接使用定義的函數,並傳入參數(操作的文件名,行數,日志信息)
wx_log('wxpay','29','日志信息');
打印的日志信息如:[2018-04-11 09:22:56]文件名:wxpay,第29行,[info]:日志信息
注意:
很多時候記錄日志需要換行。不建議使用\r\n,因為:
在
windows中
\r\n是換行
在
Mac中
\r是換行
在
Liunx中
\n是換行
但是PHP提供了一個常量來匹配不同的操作系統,即:
PHP_EOL
如:file_put_contents("log.txt", "Hello world everyone.".PHP_EOL, FILE_APPEND);