php log调试,PHP执行过程中调试Log_PHP教程

1. function Dmess($msg, $prefix='') {

2. $debugMethod = 1;// 0-> print out stnd; 1-> write log file;

3. $traceArr = debug_backtrace();

4. $lastTrace = end($traceArr);

5. if( strlen($prefix)>0 )

6. $line = "[".date("Y-m-d H:i:s")."][".$prefix."] ".$msg;

7. else {

8. $line = "[".date("Y-m-d H:i:s")."][";

9. for($i=count($traceArr);$i>0;$i--){

10. $trace = $traceArr[$i-1];

11. $line .= basename($trace['file']).":".$trace['line'];

12. if( $i==count($traceArr) )

13. $line .= "|".$trace['function'];

14. $line .= "=>";

15. }

16. $line = substr($line, 0, -2);

17. $line .= "] " . $msg;

18. }

19. if( $debugMethod==0 ) {

20. print "\n\n";

21. //print "\nDEBUG:: $msg

\n";

22. flush();

23. ob_flush();

24. }

25. else {

26. $logfile = "./logs/debug.log";

27. write2file($line."\n", $logfile);

28. }

29. }

30.

31. function write2file($msg,$fileName)

32. {

33. $fp = @fopen($fileName, 'a');

34. if($fp==false)

35. {

36. $fp=@fopen($fileName,'w+');

37. if($fp==false)

38. {

39. if($fileName!=DEBUGFILE) {

40. echo "ERROR:: file ".$fileName." can not be created for writing";

41. exit();

42. }

43. else

44. {

45. echo " file ".$fileName." can not be created for writing";

46. return 0;

47. }

48. }

49. }

50. $lfp = flock($fp,LOCK_EX);

51. $i = 0;

52. while ($lfp == False)

53. {

54. $i++;

55. $lfp = flock($fp,LOCK_EX);

56. if ($i==10){return(0);}

57. }

58. fputs($fp,$msg);

59. flock($fp,LOCK_UN);

60. fclose($fp);

61. return 1;

62. }

摘自 气度非等闲blog

http://www.bkjia.com/PHPjc/478559.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/478559.htmlTechArticle1. function Dmess($msg, $prefix=) { 2. $debugMethod = 1;// 0- print out stnd; 1- write log file; 3. $traceArr = debug_backtrace(); 4. $lastTrace = end($traceArr); 5. if( strlen($pr...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值