php列印日誌
PHP 確實不會輸出錯誤堆棧,但通過函數,還是能夠獲取到錯誤堆棧的。
function getBacktrace() {
ob_start();
debug_print_backtrace();
return ob_get_clean();
}
調用上面這個函數取得錯誤堆棧,再用 file_put_contents('log_path', FILE_APPEND); 寫入日誌文件即可。
還有一個辦法:為 PHP 安裝 xdebug 擴展
windows 下的安裝方法 安裝好後,修改 php.ini
2. php怎麼把內容輸出到apache的日誌中 基礎編程
trigger_error() 看看能不能寫到apache error.log裡面
3. PHP自帶的日誌是怎麼寫入和查看的呢
查看PHP錯誤日誌
可以在命令行裡面輸入: find . -name error.log
tailf -f error.log
寫入日誌,有固定的函數error_log($str, 3, filename)
4. php該在哪裡寫日誌怎麼寫日誌日誌是做什麼用的
在php.ini中有一段
error_log="D:\PHP\log\php-errors.log"
就是註明你php的日誌文件
5. php實現列印的代碼
php列印一般使用如下幾個函數:
echo
print_r
var_mp
其中的echo一般是輸出字元串數字的簡單類型。
print_r和var_mp兩個函數則是可以列印各種類型,它們的區別則是print_r不會列印出類型,而var_mp則會列印出值的類型。
只要逐個測試下即可明白。
6. php實現的debug log日誌操作類實例
本文實例講述了php實現的debug
log日誌操作類。分享給大家供大家參考,具體如下:
<?php
class
Tool
{
public
static
function
log($info)
{
$time
=
date('m-d
H:i:s');
$backtrace
=
debug_backtrace();
$backtrace_line
=
array_shift($backtrace);
//
哪一行調用的log方法
$backtrace_call
=
array_shift($backtrace);
//
誰調用的log方法
$file
=
substr($backtrace_line['file'],
strlen($_SERVER['DOCUMENT_ROOT']));
$line
=
$backtrace_line['line'];
$class
=
isset($backtrace_call['class'])
?
$backtrace_call['class']
:
'';
$type
=
isset($backtrace_call['type'])
?
$backtrace_call['type']
:
'';
$func
=
$backtrace_call['function'];
file_put_contents($_SERVER['DOCUMENT_ROOT'].'/debug.log',
"$time
$file:$line
$class$type$func:
$info\n",
FILE_APPEND);
}
}
class
Action
{
public
function
a()
{
$this->b();
}
public
function
b()
{
$this->c();
}
public
function
c()
{
Tool::log('sdfsdf');
}
}
$action
=
new
Action();
$action->a();
這里再補充一個函數:
function
loginfo($format)
{
$args
=
func_get_args();
array_shift($args);
$d
=
debug_backtrace(DEBUG_BACKTRACE_PROVIDE_OBJECT,
1)[0];
$info
=
vsprintf($format,
$args);
$data
=
sprintf("%s
%s,%d:
%s\n",
date("Ymd
His"),
$d["file"],
$d["line"],
$info);
file_put_contents(__DIR__."/log.txt",
$data,
FILE_APPEND);
}
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP錯誤與異常處理方法總結》、《php字元串(string)用法總結》、《PHP數組(Array)操作技巧大全》、《PHP運算與運算符用法總結》、《PHP網路編程技巧總結》、《PHP基本語法入門教程》、《php面向對象程序設計入門教程》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
7. 怎麼讓php列印錯誤日誌
這個得需要在php.ini裡面配置開啟錯誤日誌,並且設置錯誤日誌的保存路徑。
8. 如何開啟PHP日誌功能
開啟步驟如下:
1. 打開php.ini文件。
以ubuntu為例,這個文件在: /etc/php5/apache2 目錄下為例。
2. 搜索並修改下行,把Off值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改為
error_reporting = E_ALL | E_STRICT
4. 修改Apache的 httpd.conf,
以Ubuntu 為例, 這個文件在:/etc/apache2/ 目錄下,這是一個空白文件。
添加以下兩行:
php_flag display_errors on
php_value error_reporting 2039
5. 重啟Apache,就OK了。
重啟命令: :sudo /etc/init.d/apache2 restart.