I've used backtrace immediately after using the function, however it doesn't mention / show the function at all. email_save_log_03($t); $GLOBALS["FOUNDFILE"].="SAVING email_save_log_03();\n"; $GLOBALS["FOUNDFILE"].=print_r(debug_backtrace(), true)."\n"; it all gets logged, however i can't find where the save_log function is and its not shown in the backtrace... Any advice?
This is expected. debug_backtrace() shows the stack from the current point. Since the email_save_log_03 function has already ended at the point debug_backtrace() was called, it has left the stack and is not shown.
The function would only be mentioned if debug_backtrace() was
called from inside the function (including another function called
by the function in question).
Methods I would use to find where the function is defined:
* Open the project in a PHP-capable IDE such as PHPStorm. You can then ctrl-click (or equivalent for the IDE in question) the function call to go to where it's defined.
* On the linux command line: grep -irn 'function.*email_save_log' *
(.* is used here to handle any amount of unknown whitespace such as tabs, spaces, etc)
Another method you could try to find the function is to use Reflection. Specifically see https://www.php.net/manual/en/reflectionfunction.construct.php