Если вы знаете, где в коде происходит последний вызов, вы можете сделать это с помощью глобальной переменной, например,
function foo(){
if($GLOBALS['debug_foo']) {
echo 'this is the last call of this function';
}
}
$GLOBALS['debug_foo']=false;
foo(); // should not print
foo(); // should not print
$GLOBALS['debug_foo']=true;
foo(); // since this is the last call, it should print
См. Справочную страницу PHP по переменная область действия для получения дополнительной помощи.
Если вы не можете указать в коде, когда выполняется последний вызов, вы можете использовать register_shutdown_function , например,
function shutdown()
{
echo $GLOBALS['foo_dump'];
}
function foo()
{
$GLOBALS['foo_dump']='record some information here';
}
//make sure we get notified when our script ends...
register_shutdown_function('shutdown');
foo(); // should not print
foo(); // should not print
foo(); // won't print anything, but when the script ends, our
// shutdown function will print the last captured bit
// of diagnostic info