error_log 发送错误信息到某个地方

发表日期:2021-07-01 08:54:56 | 来源: | | 浏览(557) 分类:错误处理 函数

error_log

(PHP 4, PHP 5, PHP 7, PHP 8)

error_log发送错误信息到某个地方

说明

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

把错误信息发送到 web 服务器的错误日志,或者到一个文件里。

参数


  • message

  • 应该被记录的错误信息。

  • message_type

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


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


  • destination

  • 目标。它的含义描述于以上,由       message_type 参数所决定。

  • extra_headers

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


返回值

成功时返回 true, 或者在失败时返回 false

注释

警告  

error_log() 并非二进制安全的。null 字符可能截断 message

小技巧  

message 不能包含 null 字符。    注意,message 可能会发送到文件、邮件、syslog 等。    所以在调用 error_log() 前需要使用适合的转换/转义函数: base64_encode()rawurlencode()addslashes()

范例


示例 #1 error_log() 范例

<?php 
// 如果无法连接到数据库,发送通知到服务器日志if (!Ora_Logon($username, $password)) {
    error_log("Oracle database not available!", 0);
}
// 如果用尽了 FOO,通过邮件通知管理员if (!($foo = allocate_new_foo())) {
    error_log("Big trouble, we're all out of FOOs!", 1,               "operator@example.com");
}
// 调用 error_log() 的另一种方式:error_log("You messed up!", 3, "/var/tmp/my-errors.log");
?>


更新日志


版本说明
5.2.7可能的值:4添加到了 message_type


集速网 copyRight © 2015-2022 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。