1. php配置把錯誤日誌以郵件方式發送方法
這篇文章主要介紹了PHP配置把錯誤日誌以郵件方式發送方法(Windows系統),本文給出了配置示例和使用例子,需要的朋友可以參考下
當系統發生了很嚴重的問題,需要立刻發送給管理員。可以通過
error_log()
將錯誤以郵件形式發送到郵箱。
在
php.ini
中設置:
代碼如下:
sendmail_from
=
[emailprotected]
然後設置:
代碼如下:
sendmail_path
=
G:sendmailsendmail.exe
-t
其中:G:sendmailsendmail.exe
是郵件客戶端的地址。
代碼:
代碼如下:
//關閉錯誤顯示
ini_set('display_errors',
0);
//開啟錯誤日誌功能
ini_set('log_errors',
'on');
//顯示所有錯誤
error_reporting(-1);
//發送錯誤
error_log('當前系統被攻擊,產生了致命錯誤',
1,
[emailprotected]');
//參數
1
表示以郵件形式發送錯誤
2. 如何開啟Prestashop中PHP錯誤日誌
有時候在安裝一些新的東西是經常出現頁面空白的情況,多半是php出錯了。為了讓大家能夠更好地調試程序,或者讓別人更容易幫到你,把錯誤日誌打出來就非常有必要。
因為大多數人使用的是虛擬主機,沒有許可權設置php.ini,我們只能通過修改自己的程序達到輸入錯誤日誌的目的。
將下面兩行加到config/config.inc.php的@ini_set('display_errors',
'off');之前即可。
1. @ini_set('error_log',
'/home/你的用戶名/wwwroot/php_error.log');
2. @ini_set('log_errors',
'On');
注意,error_log中的你的用戶名是你的主機商給你的用戶ID。錯誤日誌放在哪個目錄不要緊,重要的是你的ID有目錄的寫文件許可權。
順便提下在php.ini里的設置,如果你有許可權修改的話。
1. log_errors = On2.
3. PHP類報錯怎麼辦
方法一:@
在任何錯誤語句之前加上@符號,即可屏蔽。
方法二:error_reporting
在PHP文件第一行加上:error_reporting(0); 即可屏蔽。
4. PHP錯誤日誌的時間與系統時間不一致,怎麼解決
你修正只是php這樣級別的時區,所以網頁顯示出來的時間跟你瀏覽器所在電腦時間是一致的(修正好了)。
但錯誤日誌的運行一般是apache或者php-cgi,它們是直接調用操作系統的時間和時區的,所以寫出來的日誌時間有時差。依照你的描述,估計你用的是linux,試一下修正一下linux的時區一下就可以了。命令如下:
rm-f/etc/localtime
ln-s/usr/share/zoneinfo/Asia/Shanghai/etc/localtime
5. 怎麼讓php列印錯誤日誌
(1)使用echo ,簡單輸出
(2)使用print_r(),可以有規則的列印復雜結構
(3)var_mp遞歸輸出某種結構體
(4)print(),簡單列印
可以將你要輸出的錯誤內容放到上述語句或函數內進行列印輸出;也可以寫入某個文件,作為你的Log日誌:file_put_contents('/test1.txt',$value['value'],FILE_APPEND)等這類文件函數
以上是我自己工作中總結的PHP調試方法,挺好用的。