how to have php get the __LINE__ or __FILE__ value where a function is called

*爱你&永不变心* 提交于 2019-12-09 18:33:51

问题


I have a ZF debug function like this:

function fs_d($d, $at){
    if($_REQUEST['debug']=='123'){
        Zend_Debug::dump($d,'at: ' . $at);
    }else{
        return true;
    }
}

and will call like this:

fs_d($var, $at)

what I'd like $at to represent where $at was called in the function. In other words, something like __FILE__ at __LINE__ that is evaluated at point of function call and NOT at point of output. But I don't want to write __FILE__ at __LINE__ at every call.

Is there some way to wrap as a macro, wrap in brackts, {$} or backticks or something?


回答1:


http://www.php.net/debug_backtrace

$backtrace = debug_backtrace(false);
$last = $backtrace[1];
echo "Error in $last[file], line $last[line] ($last[function])!";


来源:https://stackoverflow.com/questions/7184280/how-to-have-php-get-the-line-or-file-value-where-a-function-is-called

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!