PHP格式化輸出日誌到文件

代碼:

if (!function_exists('print_log')) {
    function print_log($data, $is_pretty = 1)
    {
        $log_dir = './log' . '/' . date("Ym");
        if (!is_dir($log_dir)) {
            mkdir($log_dir, 0777, true);
        }
        $file = date("d") . ".log";
        $ct = '[ ' . date("Y-m-d H:i:s", time()) . ' ]' . ' ' . get_ip() . ' ' . $_SERVER['REQUEST_METHOD'] . ' ' . $_SERVER['REQUEST_URI'];
        if ($is_pretty == 1 && is_array($data)) {
            $data = json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
        }
        file_put_contents($log_dir . '/' . $file, $ct . PHP_EOL, FILE_APPEND);
        if (is_string($data)) {
            file_put_contents($log_dir . '/' . $file, $data . PHP_EOL . PHP_EOL, FILE_APPEND);
        } else {
            file_put_contents($log_dir . '/' . $file, var_export($data, true) . PHP_EOL . PHP_EOL, FILE_APPEND);
        }

    }
}

1、JSON_UNESCAPED_UNICODE(中文不轉爲unicode,對應的數字256)
2、JSON_UNESCAPED_SLASHES(不轉義反斜槓,對應的數字64)
3、JSON_PRETTY_PRINT 用空白字符格式化返回的數據

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章