控制Log信息的函数

调试PHP程序的一种重要的方法就是查看Log信息。如果能够方便地控制Log信息的级别以及Log信息的显示内容,将会给程序调试带来更多的便利。下面的几个函数可以方便地实现这个功能。

 
 
  1. $ss_log_level = 0;
  2. $ss_log_filename = /tmp/ss-log;
  3. $ss_log_levels = array(
  4.  NONE => 0,
  5.  ERROR => 1,
  6.  INFO => 2,
  7.  DEBUG => 3);
  8. function ss_log_set_level ($level = ERROR) {
  9.  global $ss_log_level;
  10.  $ss_log_level = $level;
  11. }
  12. function ss_log ($level, $message) {
  13.  global $ss_log_level, $ss-log-filename;
  14.  if ($ss_log_levels[$ss_log_level] < $ss_log_levels[$level]) {
  15. // 不显示Log信息
  16. return false;
  17.  }
  18.  $fd = fopen($ss_log_filename, “a+”);
  19.  fputs($fd, $level. - [.ss_timestamp_pretty().] - .$message.”n”);
  20.  fclose($fd);
  21.  return true;
  22. }
  23. function ss_log_reset () {
  24.  global $ss_log_filename;
  25.  @unlink($ss_log_filename);
  26. }

在上面的函数中,有四个Log级别变量。运行PHP程序时,只有当Log的级别低于预设的级别值时,Log信息才可以被记录和显示出来。例如,在程序中加入如下的一条语句:

 
 
  1. ss_log_set_level(INFO);

那么,运行PHP程序时,只有ERROR和INFO级别的LOG信息才能被记录和显示出来,DEBUG级的信息则被忽略了。除此之外,我们还可以设定显示的信息内容,其语句如下:

 
 
  1. ss_log(ERROR, “testing level ERROR”);
  2. ss_log(INFO, “testing level INFO”);
  3. ss_log(DEBUG, “testing level DEBUG”);

你也可以随时使用下面的语句清空LOG信息:

 
 
  1. ss_log_reset();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值