2010-12-27 5 views
0

J'ai une simple fonctionsavoir où une func a été appelé

function hi(){ 
    echo 'hi'; 
    echo 'this func is called from: {file} at line {line}'; 
} 

est-il un moyen de connaître le fichier et la ligne qui a appelé une func dans la fonc?

Répondre

2

Vous pouvez utiliser debug_backtrace, comme ceci:

function hi() { 
    echo 'hi'; 

    $trace = debug_backtrace(); 
    $file = $trace[0]['file']; 
    $line = $trace[0]['line']; 

    echo 'this func is called from: ' . $file . ' at line ' . $line; 
} 

hi(); 

Notez que debug_backtrace récupérera la totalité de la pile d'appel. Le premier élément ($trace[0]) contiendra toujours la ligne/fonction/fichier appelante quelconque.

Questions connexes