閱讀507 返回首頁    go 阿裏雲 go 技術社區[雲棲]


php日誌,記錄日誌

開發中有些重要操作時,記錄數據庫日誌同時又要記錄文件日誌,而且日誌不能和站點的其他日誌混在一起,所以寫了這麼個東東
/**日誌
 * Created by JetBrains PhpStorm.
 * User: feng
 * Date: 13-7-25
 * Time: 下午3:15
 * To change this template use File | Settings | File Templates.
 */
class Log {
    /**寫入日誌
     * @param $model 模塊名稱,目錄名,允許字母/數字/下劃線/減號
     * @param $msg  日誌內容,可以為數組
     * @param string $suffix    後綴名稱,可以為空,允許字母/數字/下劃線/減號/英文句號
     * @param string $prefix    前綴名稱,可以為空,允許字母/數字/下劃線/減號/英文句號
     * @return bool
     */
    public static function Write($model,$msg,$suffix='',$prefix=''){
        if(empty($msg)){
            return false;
        }
        if(is_array($msg)){
            $msg=var_export($msg,true);
        }
        $msg="\n[time]".date('Y:m:d H:i:s').' '.$msg;
        //模塊文件夾格式化,允許字母/數字/下劃線/減號
        $model=preg_replace ("/[^\w-]/i",  "$1",  $model);
        $model=empty($model)?'none':$model;
        //文件存儲地址
        $file=WEBROOT.APPPATH.'logs/'.$model.'/';
        if(!is_dir($file)){
            mkdir($file,0777);
        }
        $file.=date('Y/');
        if(!is_dir($file)){
            mkdir($file,0777);
        }
        $prefix=preg_replace ("/[^\w-\.]/i",  "$1",  $prefix);
        $suffix=preg_replace ("/[^\w-\.]/i",  "$1",  $suffix);
        $file.=$prefix.date('m-d-').$suffix.'.log';
        error_log($msg,3,$file);
        return true;
    }
}

最後更新:2017-04-03 16:48:42

  上一篇:go Oracle樹結構查詢——connect by語法詳解
  下一篇:go CM_RESOURCE_LIST structure