توابع debug_backtrace() PHP

مثال

تولید backtrack PHP:

<?php
 توابع a($txt) {
     b("Glenn");
 }
 توابع b($txt) {
     c("Cleveland");
}
 توابع c($txt) {
     var_dump(debug_backtrace());
 }
 a("Peter");
 ?> 

خروجی کد مشابه این خواهد بود:

آرایه (Array)
     [0] => آرایه (Array)
         [file] => C:\webfolder\test.php
         [line] => 6
         [function] => c
         [args] => آرایه (Array)
             [0] => Cleveland
         )
     )
     [1] => آرایه (Array)
         [file] => C:\webfolder\test.php
         [line] => 3
         [function] => b
         [args] => آرایه (Array)
             [0] => Glenn
         )
     )
     [2] => آرایه (Array)
         [file] => C:\webfolder\test.php
         [line] => 11
         [function] => a
         [args] => آرایه (Array)
             [0] => Peter
         )
     )
 )

تعریف و استفاده

توابع debug_backtrace() backtrack (پایگاه بازگشت) را تولید می‌کند.

این تابع داده‌های تولید شده توسط کد debug_backtrace() را نمایش می‌دهد.

یک آرایه مرتبط بازمی‌گرداند. عناصر ممکنه به شرح زیر باشند:

Name Type Description
function string Current function name
line integer Current line number
file string Current file name
class string Current class name
object object Current object
type string

Current call type. Possible calls:

  • Returns: "->" - method call
  • Returns: "::" - static method call
  • Returns nothing - function call
args array If in a function, list the function parameters. If in the referenced file, list the name of the referenced file.

Syntax

debug_backtrace(options,limit);
Parameter Description
options

Optional. Specify the bitmask for the following options:

  • DEBUG_BACKTRACE_PROVIDE_OBJECT (whether to fill the index of "object")
  • DEBUG_BACKTRACE_IGNORE_ARGS (whether to ignore the index of "args", including all the parameters of function/method, which can save memory overhead.)
limit Optional. Limit the number of returned stack frames. The default is (limit=0) Returns all stack frames.

Technical Details

Return Value: None
PHP Version: 4.3+
PHP Update Log

PHP 5.4: Added optional parameters limit.

PHP 5.3.6: Parameter provide_object Changed to optionsand added the optional parameter DEBUG_BACKTRACE_IGNORE_ARGS.

PHP 5.2.5: Added optional parameters provide_object.

PHP 5.1.1: Added the current object For possible returned elements.