php基于自定义函数记录log日志方法


Posted in PHP onJuly 21, 2017

本文实例讲述了php基于自定义函数记录log日志方法。分享给大家供大家参考,具体如下:

/**
 * 记录错误日志
 * @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()打印的相似。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
最令PHP初学者们头痛的十四个问题
Jan 15 PHP
Php 构造函数construct的前下划线是双的_
Dec 08 PHP
php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)
Jul 31 PHP
php流量统计功能的实现代码
Sep 29 PHP
php中将字符串转为HTML的实体引用的一个类
Feb 03 PHP
sql注入与转义的php函数代码
Jun 17 PHP
php实现的短网址算法分享
Jun 20 PHP
phpmyadmin中禁止外网使用的方法
Nov 04 PHP
php查询mssql出现乱码的解决方法
Dec 29 PHP
PHP笛卡尔积实现算法示例
Jul 30 PHP
php 使用 __call实现重载功能示例
Nov 18 PHP
PHP ElasticSearch做搜索实例讲解
Feb 05 PHP
解决form中action属性后面?传递参数 获取不到的问题
Jul 21 #PHP
PHP实现的redis主从数据库状态检测功能示例
Jul 20 #PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 #PHP
php检测mysql表是否存在的方法小结
Jul 20 #PHP
Laravel接收前端ajax传来的数据的实例代码
Jul 20 #PHP
php脚本守护进程原理与实现方法详解
Jul 20 #PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
Jul 20 #PHP
You might like
提升PHP性能的21种方法介绍
2013/06/25 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
2016/10/17 PHP
Apache站点配置SSL强制跳转443
2021/03/09 Servers
jQuery EasyUI 开源插件套装 完全替代ExtJS
2010/03/24 Javascript
JS控制显示隐藏兼容问题(IE6、IE7、IE8)
2010/04/01 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
2011/11/09 Javascript
ajax上传时参数提交不更新等相关问题
2012/12/11 Javascript
深入理解JavaScript编程中的原型概念
2015/06/25 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
基于JS2Image实现圣诞树代码
2015/12/24 Javascript
如何在Linux上安装Node.js
2016/04/01 Javascript
Bootstrap媒体对象的实现
2016/05/01 Javascript
assert()函数用法总结(推荐)
2017/01/25 Javascript
微信小程序movable view移动图片和双指缩放实例代码
2017/08/08 Javascript
vue axios 在页面切换时中断请求方法 ajax
2018/03/05 Javascript
vue中各种通信传值方式总结
2019/02/14 Javascript
VUE引入第三方js包及调用方法讲解
2019/03/01 Javascript
详解Node.js一行命令上传本地文件到服务器
2019/04/22 Javascript
手把手教你使用TypeScript开发Node.js应用
2019/05/06 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
[01:27]DOTA2电竞之夜 今夜共饮庆功酒
2014/08/02 DOTA
Python实现各种排序算法的代码示例总结
2015/12/11 Python
Python 处理数据的实例详解
2017/08/10 Python
Python中的is和==比较两个对象的两种方法
2017/09/06 Python
快速了解Python相对导入
2018/01/12 Python
python3+dlib实现人脸识别和情绪分析
2018/04/21 Python
python Pillow图像处理方法汇总
2019/10/16 Python
英国第一家领先的在线处方眼镜零售商:Glasses Direct
2018/02/23 全球购物
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
广告学专业推荐信范文
2013/11/23 职场文书
室内设计专业学生的自我评价分享
2013/11/27 职场文书
一份报关员的职业规划范文
2014/01/08 职场文书
2014爱耳日宣传教育活动总结
2014/03/09 职场文书
大学生学习面向未来的赶考思想汇报
2014/09/12 职场文书
详解分布式系统中如何用python实现Paxos
2021/05/18 Python