> 백엔드 개발 > PHP 튜토리얼 > PHP日志记录步骤

PHP日志记录步骤

WBOY
풀어 주다: 2016-06-13 12:17:19
원래의
990명이 탐색했습니다.

PHP日志记录方法

PHP一直被认为是一种上不了台面的语言,主要是因为它大量的依靠各种函数。但事实上PHP也是网站中使用最广的语言,这跟它的简单方便有关。相比起其他网站语言来说,PHP没有自己的server,需要依赖Apache等服务器,如果你使用Tomcat,你就会明显感觉到PHP少了一个后台控制台,在Tomcat的控制台里你可以事实看到程序输出的日志信息。而PHP就缺少了这种能力,当你遇到在开发PHP程序时,需要实时看到后台打印出日志时,我想你的愿望很难实现。一种变通的方案是将日志出处到一个文件里。PHP里提供了一个<span class="pln">error_log</span><span class="pun">()</span>,能帮助你快捷的将日志输出到指定的文件里。

这个函数的接口描述如下:

bool error_log (string $message [,int $message_type =0[,string $destination [,string $extra_headers ]]])

其中第一个参数是要输出的日志,第二个参数是输出的方式,一共有四种方式,分别是:

error_log() 日志类型
0 <span class="pln">message</span> 发送到 PHP 的系统日志,使用
操作系统的日志机制或者一个文件,取决于
error_log 指令设置了什么。
这是个默认的选项。
1 <span class="pln">message</span> 发送到参数 <span class="pln">destination</span>
设置的邮件地址。
第四个参数 <span class="pln">extra_headers</span> 只有在这个类型里才会被用到。
2 不再是一个选项。
3 <span class="pln">message</span> 被发送到位置为 <span class="pln">destination</span> 的文件里。
字符 <span class="pln">message</span> 不会默认被当做新的一行。
4 <span class="pln">message</span> 直接发送到 SAPI 的日志处理程序中。

我们最常用的是输出到日志文件里,就是3.

下面是一个用法的例子:

<span class="pun"><?</span><span class="pln">php</span><span class="com">// 如果无法连接到数据库,发送通知到服务器日志</span><span class="kwd">if</span><span class="pun">(!</span><span class="typ">Ora_Logon</span><span class="pun">(</span><span class="pln">$username</span><span class="pun">,</span><span class="pln"> $password</span><span class="pun">))</span><span class="pun">{</span><span class="pln">    error_log</span><span class="pun">(</span><span class="str">"Oracle database not available!"</span><span class="pun">,</span><span class="lit">0</span><span class="pun">);</span><span class="pun">}</span><span class="com">// 如果用尽了 FOO,通过邮件通知管理员</span><span class="kwd">if</span><span class="pun">(!(</span><span class="pln">$foo </span><span class="pun">=</span><span class="pln"> allocate_new_foo</span><span class="pun">()))</span><span class="pun">{</span><span class="pln">    error_log</span><span class="pun">(</span><span class="str">"Big trouble, we're all out of FOOs!"</span><span class="pun">,</span><span class="lit">1</span><span class="pun">,</span><span class="str">"[email&#160;protected]"</span><span class="pun">);</span><span class="pun">}</span><span class="com">// 调用 error_log() 的另一种方式:</span><span class="pln">error_log</span><span class="pun">(</span><span class="str">"You messed up!"</span><span class="pun">,</span><span class="lit">3</span><span class="pun">,</span><span class="str">"/var/tmp/my-errors.log"</span><span class="pun">);</span><span class="pun">?></span>
로그인 후 복사

?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿