1 <?php
 2     /**
 3      * 名称:日志记录
 4      * 添加:wenzl
 5      * 日期:20140327
 6      * desc:
 7      * 当前位置生成日志文件
 8      * 每天会自动进行一次备份
 9      * 日志文件大小2M限制
10      * @param string $log
11      * @param type $def
12      * @return type
13      */
14     public function log($log="",$def="1"){
15   $log_file = dirname(__FILE__) . "/" . date('Y-m-d-',time()).$def.".log";
16
17   /**
18    * 日志文件归档
19    */
20   $dh = dirname(__FILE__)."/";
21   $da = scandir($dh);
22   $da = array_filter($da, function($da){
23       return preg_match("/\d+\-\d+.*/",$da);
24   });
25
26   array_walk($da, function($dv,$dk,$dh){
27       $l_file = $dh . $dv;
28       $n_file = $dh . date("Y-m-d") . ".logs/".$dv;
29       $dirbase = dirname($n_file);
30       is_dir($dirbase) || mkdir($dirbase, 0777);
31       $fct = filectime($l_file);
32       $begin = strtotime(date("Y-m-d"));
33       if($fct < $begin){
34    rename($l_file, $n_file);
35       }
36   },$dh);
37
38
39
40
41   /**
42    * 日志记录
43    */
44   if(filesize($log_file)>2097152){
45       $def++;
46       $this->log($log,$def);
47       exit;
48   }else{
49       $now = "[".date('Y-m-d H:i:s')."] ";
50       $log = $now .$log. "\r\n";
51       error_log($log, 3,$log_file, null);
52   }
53   return $def;
54     }
55 ?>

转载于:https://www.cnblogs.com/wenzhilin/p/3640477.html

记录php运行日记的方法相关推荐

  1. mac 打开html c python,在Mac系统使用Visual Studio Code运行Python的方法

    在Mac系统使用Visual Studio Code运行Python的方法 发布时间:2020-08-10 10:29:31 来源:亿速云 阅读:105 作者:小新 在Mac系统使用Visual St ...

  2. VMware Workstation Pro 无法在Windows上运行的解决方法

    报错信息 : VMware Workstation Pro 无法在Windows上运行的解决方法 解决办法 1.方法二:卸载补丁 以下三个会产生相关影响,因此在控制面板里找到相关的,然后卸之. Oct ...

  3. windows添加右键点击打开CMD(运行)的方法

    (记录一下,这样操作的目的是方便再某个文件夹下直接打开运行cmd 解决了cd \的问题,而且对比发现,cmd 比gitBash或者编译器自带的shell或者Terminal 工具运行速度好很多.) 法 ...

  4. Centos7.9上利用cephadm安装Ceph Octopus 15.2的采坑记录,附带K8S挂载方法

    Centos7.9上利用cephadm安装Ceph Octopus 15.2的采坑记录,附带K8S挂载方法 0.亮点 1 准备 1.1 修改历史记录 1.2 升级系统内核 1.3 配置免密登录 问题1 ...

  5. 改善老旧配电室运行环境的方法 辅助监控系统

    前言 现如今,伴随着经济和科技的飞速发展,居民的生活质量也得到普遍地提升,他们对于电力的需求越来越大,对供电质量的要求越来越严格.国家对于电力工程投资和关注度都非常大,近年来对配电室的环境安全状况越来 ...

  6. linux docker运行目录,Linux更改Docker运行根目录的方法

    下面的就是解决Docker存放位置的空间太小,导致Docker运行缓慢的方法了,有遇到这个问题的用户,就用这种方法进行解决吧. 解决方法: 一是重装系统,这也太不人性化了,忽略...下次部署 Dock ...

  7. ubuntu下php服务器搭建_Ubuntu服务器下搭建php运行环境的方法

    本文实例讲述了Ubuntu服务器下搭建php运行环境的方法.分享给大家供大家参考,具体如下: 安装 Apache2: sudo apt-get install apache2 安装PHP模块: sud ...

  8. Windows Server查看和记录远程登录信息的方法

    前两天我的一台Windows Server 2012R2的服务器中了传说中的cryptowall病毒,所有数据文件都被加密,需要我支付1个比特币才能解码.幸好服务器上没什么重要的文件,还好我没钱,我选 ...

  9. vc2005运行库彻底卸载_解决不安装VC运行库(VC2005,VC2008),程序运行出错的方法...

    因为VS2005以后程序采用了manifest的生成方式,所以发布的时候要和运行库一起发布.但是我们平时开发和发布的时候如果都要客户安装运行库,那就不太方便了.你可以Microsoft下载:http: ...

  10. Hive自定义UDF的JAR包加入运行环境的方法

    Hive开发udf函数打包jar文件后,需将jar文件放入hive的运行环境,方法有三. 先将http://blog.csdn.net/fjssharpsword/article/details/70 ...

最新文章

  1. 4.0以后的新布局方式GridLayout
  2. linux内核的反复--一切都是过程
  3. 熊猫分发_实用熊猫指南
  4. 【HDU - 4784】Dinner Coming Soon(记忆化搜索bfs,dp)
  5. 英特尔拥抱开源,岂能没有杀手锏?
  6. IntelliJ IDEA在行尾增加分号
  7. ffmpeg libx264_nginx+ffmpeg搭建流媒体服务器(直播流)
  8. C++新特性探究(二):override、final
  9. uniapp 开发踩坑记录
  10. 炼丹手册——学习率设置
  11. 很不错的在线Office控件:IWebOffice与SOAOffice
  12. 免安装连接oracle,Oracle免安装PL/SQL连接
  13. Python使用OCR识别中英文
  14. 含义:Web1.0、Web2.0、Web3.0、Web4.0、Web5.0、Web6.0
  15. MySQL 系统自带的数据库有哪些?每个数据库的作用是什么?
  16. 自定义通知图标音量电池没有的解决方法
  17. C# 键盘中的按键对应的KeyValue
  18. Apache Shiro 认证绕过漏洞(CVE-2020-1957)
  19. 《图像处理实例》 之 二值图像分割
  20. Qt界面中如何嵌入网页?

热门文章

  1. OpenCV-3.4.3图像通道处理
  2. Django Mysql数据库-聚合查询与分组查询
  3. Something about mvss
  4. Could not create ServerSocket on address 0.0.0.0/0.0.0.0:9083
  5. redhat6安装git出现的问题
  6. [bzoj2115][Wc2011] Xor
  7. JS双引号替换单引号
  8. 前台传来的文件通过流stream转成bytes 再把文件写入数据库 类型是blob
  9. 闭包基础概念,闭包详解
  10. 使用Visual Studio 2010 Team System中的架构师工具(设计与建模)