W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
(PHP 4, PHP 5, PHP 7, PHP 8)
error_log — 發(fā)送錯誤信息到某個地方
error_log(
string $message,
int $message_type = 0,
?string $destination = null,
?string $additional_headers = null
): bool
把錯誤信息發(fā)送到 web 服務器的錯誤日志,或者到一個文件里。
message
應該被記錄的錯誤信息。
message_type
設置錯誤應該發(fā)送到何處。可能的信息類型有以下幾個:
0 | message 發(fā)送到 PHP 的系統(tǒng)日志,使用 操作系統(tǒng)的日志機制或者一個文件,取決于 error_log 指令設置了什么。 這是個默認的選項。 |
1 | message 發(fā)送到參數(shù) destination 設置的郵件地址。 第四個參數(shù) additional_headers 只有在這個類型里才會被用到。 |
2 | 不再是一個選項。 |
3 | message 被發(fā)送到位置為 destination 的文件里。 字符 message 不會默認被當做新的一行。 |
4 | message 直接發(fā)送到 SAPI 的日志處理程序中。 |
destination
目標。它的含義描述于以上,由 message_type
參數(shù)所決定。
additional_headers
額外的頭。當 message_type
設置為 1
的時候使用。 該信息類型使用了 mail() 的同一個內(nèi)置函數(shù)。
成功時返回 true, 或者在失敗時返回 false。如果 message_type 是 0,此函數(shù)始終返回 true,無論是否可以記錄錯誤。
版本 | 說明 |
---|---|
8.0.0 | 現(xiàn)在 destination 和 additional_headers 允許為 null。 |
示例 #1 error_log() 范例
<?php
// 如果無法連接到數(shù)據(jù)庫,發(fā)送通知到服務器日志
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");
?>
注釋警告
error_log() 并非二進制安全的。null 字符可能截斷 message。
小技巧
message 不能包含 null 字符。注意,message 可能會發(fā)送到文件、郵件、syslog 等。所以在調用 error_log() 前需要使用適合的轉換/轉義函數(shù):base64_encode()、rawurlencode() 或 addslashes()。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: