You can also print execution information, such as
the current file being executed. The name of the function currently being executed can be retrieved using
the function get_active_function_name(). This function
returns a pointer to the function name and doesn't accept any arguments. To retrieve the name of the file currently being executed, use zend_get_executed_filename(). This function
accesses the executor globals, which are passed to it using the
ELS_C macro. The executor globals are automatically
available to every function that's called directly by Zend (they're part of
the INTERNAL_FUNCTION_PARAMETERS described earlier in this
chapter). If you want to access the executor globals in another function
that doesn't have them available automatically, call the macro
ELS_FETCH() once in that function; this will introduce them
to your local scope.
Finally, the line number currently being executed can be
retrieved using the function zend_get_executed_lineno().
This function also requires the executor globals as arguments. For examples of these functions, see Listing 9.15 and Figure 9.10. Of
course, all the examples are also available on the CD-ROM.