zoukankan      html  css  js  c++  java
  • php输出日志的实现

    php输出日志的实现

    思想:在想要输出log日志的地方,使用php的写入文件函数,把数据写入到事先定义好的文件中。

    php代码如下:
    //输出日志
        public function outputLog() {
            logOutput(time());
            sleep(3);
            $arr = array("k1" => "v1", "k2" => "v2");
            logOutput($arr);
    
            $this->display();
        }
    logOutput()函数:
    /**
     * @param  string,array  $data 需要输出到日志中的数据
     * @return null 
     */
    function logOutput($data) {
        //数据类型检测
        if (is_array($data)) {
            $data = json_encode($data);
        }
        $filename = "./log/".date("Y-m-d").".log";
        $str = date("Y-m-d H:i:s")."   $data"."
    ";
        file_put_contents($filename, $str, FILE_APPEND|LOCK_EX);
        return null;
    }
    

    2016-10-24_184658
    2016-10-24_184644

    file_put_contents() 函数把一个字符串写入文件中。
    与依次调用 fopen(),fwrite() 以及 fclose() 功能一样。
    语法
    file_put_contents(file,data,mode,context)
    参数	描述
    file	必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。
    data	可选。规定要写入文件的数据。可以是字符串、数组或数据流。
    mode	可选。规定如何打开/写入文件。可能的值:
            FILE_USE_INCLUDE_PATH
            FILE_APPEND    追加数据而不是覆盖
            LOCK_EX    写入数据时,锁住文件,防止其他人对文件的改动
    context	可选。规定文件句柄的环境。(不懂何用)
            context 是一套可以修改流的行为的选项。若使用 null,则忽略。
    • 意义:
    • 在可能出错的地方,进行调试时,输出错误信息
    • 输出变量,进行调试,可以避免平常的var_dump、dump函数打印一长串的数据,影响页面布局
    一直走下去,不容易
  • 相关阅读:
    BZOJ4779: [Usaco2017 Open]Bovine Genomics
    USACO比赛题泛刷
    BZOJ1977: [BeiJing2010组队]次小生成树 Tree
    LOJ #10132. 「一本通 4.4 例 3」异象石
    $O(n+log(mod))$求乘法逆元的方法
    BZOJ2226: [Spoj 5971] LCMSum
    数据库 | Redis 缓存雪崩解决方案
    中间件 | 微服务架构
    数据库 | SQL 诊断优化套路包,套路用的对,速度升百倍
    数据库 | SQL语法优化方法及实例详解
  • 原文地址:https://www.cnblogs.com/lpy001/p/5994170.html
Copyright © 2011-2022 走看看