千家信息网

php如何将错误日志写入文件

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家分享的是有关php如何将错误日志写入文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php将错误日志写入文件的方法:1、在配置文件php.ini中,搜索"e
千家信息网最后更新 2026年11月01日php如何将错误日志写入文件

这篇文章给大家分享的是有关php如何将错误日志写入文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

php将错误日志写入文件的方法:1、在配置文件php.ini中,搜索"error_log"项,配置日志文件的路径;2、利用error_log()函数将错误日志写入配置好的日志文件中,语法"error_log(需要记录的错误信息,0);"。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

如果想使用自己指定的文件记录错误日志,一定要确保这个文件存放在文档根目录之外,以减少遭到攻击的可能。并且该文件一定要让 PHP 脚本具有写权限。假设在 Linux 操作系统中,将 /usr/local/ 目录下的 error.log 文件作为错误日志文件,并设置 Web 服务器进程用户具有写的权限。然后在 PHP 的配置文件中,将 error_log 指令的值设置为这个错误日志文件的绝对路径。

需要将 php.ini 中的配置指令做如下修改:

error_reporting  =  E_ALL                             // 将会向PHP报告发生的每个错误  display_errors = Off                                     // 不显示满足上条 指令所定义规则的所有错误报告  log_errors = On                                           // 决定日志语句记录的位置  log_errors_max_len = 1024                         // 设置每个日志项的最大长度  error_log = E:/php_log/php_error.log         // 指定产生的错误报告写入的日志文件位置

PHP 的配置文件按上面的方式设置完成以后,并重新启动 Web 服务器。这样,在执行 PHP 的任何脚本文件时,产生的所有错误报告都不会在浏览器中显示,而会记录在自己指定的错误日志 E:/php_log/php_error.log 中。

此外,不仅可以记录满足 error_reporting 所定义规则的所有错误,而且还可以使用 PHP 中的 error_log() 函数把错误信息发送到 web 服务器的错误日志或者到一个文件里。

error_log() 函数的原型如下所示:

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

参数说明如下:

  • $message:需要记录的错误信息;

  • $message_type:设置错误应该发送到何处。可能的信息类型有以下几个:

    • 0:(默认值)将 $message 发送到 PHP 的系统日志,使用操作系统的日志机制或者一个文件,取决于配置文件中 error_log 设置了什么;

    • 1:将 $message 发送到参数 $destination 设置的邮件地址。 第四个参数 $extra_headers 只有在这个类型里才会被用到;

    • 2:(已废弃)不再是一个选项;

    • 3:$message 被发送到位置为 $destination 的文件里。字符 $message 不会默认被当做新的一行;

    • 4:将 $message 直接发送到 SAPI 的日志处理程序中。

  • $destination:目标,也就是错误消息被发送到的目的地。它的含义描述于以上,由 $message_type 参数所决定;

  • $extra_headers:额外的头。当 $message_type 设置为 1 的时候使用。 该信息类型使用了 mail() 的同一个内置函数。

【示例】以登入 Mysql 数据库为例,当登入失败时记录错误信息。

运行上面的代码,会在 php.ini 配置文件中 error_log 一项所设置的目录中生成对应的错误日志文件,文件内容如下:

[08-May-2020 13:17:31 PRC] PHP Warning:  mysqli_connect(): (HY000/1045): Access denied for user 'my_user'@'localhost' (using password: YES) in D:\WWW\index.php on line 2[08-May-2020 13:17:31 PRC] Mysql 数据库连接失败!

感谢各位的阅读!关于"php如何将错误日志写入文件"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

文件 错误 日志 配置 信息 函数 参数 报告 系统 位置 内容 指令 服务器 类型 服务 操作系统 数据 数据库 更多 权限 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海喔噻互联网科技有限公司 江苏根荣互联网科技 互联网是不是新科技 互联网科技未来 万易互联网科技 互联网科技公司怎么样 互联网汽车科技小镇 深圳国际航运科技和互联网 字节跳动和互联网科技 重庆威客帮互联网科技 互联网公司科技股 杭州壁岐互联网科技有限公司 互联网媒体平台算高科技产业 每天都有哪些好的互联网科技 有人说阿里系是互联网科技企业 陕西云淼互联网科技公司 广东鹅鹅鹅互联网科技有限公司 银川新华互联网科技学校是国营吗 中国互联网公司的科技投入 北京军民互联网科技公司 互联网金融监管科技数据 科技互联网政务服务 互联网巨头反垄断金融科技 小马过河互联网科技 长亮科技互联网金融 互联网 新科技 成都狮子座互联网科技 互联网科技股有哪些 成都互联网科技公司100强 重庆互联网医院沙龙医盟信息科技
0