Home > Backend Development > PHP Tutorial > PHP日志记录步骤

PHP日志记录步骤

WBOY
Release: 2016-06-13 12:17:19
Original
999 people have browsed it

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>
Copy after login

?

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template