|
debug_print_backtrace
Prints a backtrace
(PHP 5)
Example 591. debug_print_backtrace() example<?php <?php The above example will output something similar to: #0 eval() called at [/tmp/include.php:5] Code Examples / Notes » debug_print_backtraceaidan
This functionality is now implemented in the PEAR package PHP_Compat. More information about using this function without upgrading your version of PHP can be found on the below link: http://pear.php.net/package/PHP_Compat bortuzar
If you want to get the trace into a variable or DB, I suggest to do the following: <?php ob_start(); debug_print_backtrace(); $trace = ob_get_contents(); ob_end_clean(); $query = sprintf("INSERT INTO EventLog (Trace) VALUES ('%s')", mysql_real_escape_string($trace)); mysql_query($query); ?> taner
bortuzar: a simpler version, w/o output buffering: <?php $query = sprintf("INSERT INTO EventLog (Trace) VALUES ('%s')", mysql_real_escape_string(join("\n", debug_backtrace())) ); mysql_query($query); ?> petermarkellis
A cleaner example: <?php function a() { b(); } function b() { c(); } function c(){ debug_print_backtrace(); } a(); ?> outputs: #0 c() called at [C:\debugbacktracetest.php:7] #1 b() called at [C:\debugbacktracetest.php:3] #2 a() called at [C:\debugbacktracetest.php:14] |