Re: Getting the name of a function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Daniel Brown schreef:
On Wed, Feb 27, 2008 at 1:56 PM, Richard S. Crawford
<rscrawford@xxxxxxxxxxxx> wrote:
For my own amusement, I'm writing a function that will print out detailed
 error messages for an API that I'm creating for a minor project.  One of the
 pieces of information I'd like to return would be the name of the function
 that called the error function.
[snip!]
 I know that I could pass the name of the function as a parameter to the
 error() function (e.g. error("bad_function","This is dumb")) but I'd rather
 keep it simpler than that.

 Is there a way to do this?

    Not without a lower-level stack trace utility like xdebug, as far

huh? what about debug_backtrace() ... contains plenty of info, including
function names of everything in the stack. of course something like xdebug
can take it to a whole new level.

as I know.  However, you can slightly modify your code to do this:

<?php
function error ($func,$message) {
   print "The error message is $message";
   print "The function that called the error was: ".$func."\n";
}

function bad_function($param) {
   error (__FUNCTION__,"This is dumb");
   return false;
}

bad_function("blah");
?>

    I also placed that online in my code library (to which I always
forget to link, but have dozens of examples), along with a function to
list all of the user-level functions available to the current script.

    [Demo]    http://www.pilotpig.net/code-library/function-info.php
    [Source]   http://www.pilotpig.net/code-library/source.php?f=function-info.php


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux