php自定义函数记录log日志

小云云
小云云 原创
2023-03-19 21:36:01 1412浏览

本文主要和大家分享php基于自定义函数记录log日志方法,涉及php针对文件、目录及错误日志相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。


/**
 * 记录错误日志
 * @param 日志内容 $res
 */
function save_log($res) {
  $err_date = date("Ym", time());
  //$address = '/var/log/error';
  $address = './error';
  if (!is_dir($address)) {
    mkdir($address, 0700, true);
  }
  $address = $address.'/'.$err_date . '_error.log';
  $error_date = date("Y-m-d H:i:s", time());
  if(!empty($_SERVER['HTTP_REFERER'])) {
    $file = $_SERVER['HTTP_REFERER'];
  } else {
    $file = $_SERVER['REQUEST_URI'];
  }
  if(is_array($res)) {
    $res_real = "$error_date\t$file\n";
    error_log($res_real, 3, $address);
    $res = var_export($res,true);
    $res = $res."\n";
    error_log($res, 3, $address);
  } else {
    $res_real = "$error_date\t$file\t$res\n";
    error_log($res_real, 3, $address);
  }
}

var_export() 方法详解:

var_export – 输出或返回一个变量的字符串表示

描述 :

mixed var_export ( mixed expression , bool )

此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。

您可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。

EG:

var_export(array('a','b',array('aa','bb','cc'))) 这种与VAR_DUMP没什么区别;


$var =var_export(array('a','b',array('aa','bb','cc')),TRUE)

加上TRUE后,不会再打印出来,

而是给了一个变量,这样就可以直接输出;


echo $var;

此时输出来的形式与var_dump()打印的相似。

相关推荐:

yii2中关于log输出到file及database的简单实例


以上就是php自定义函数记录log日志的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。