To easily debug the value of a variable in Horde PHP code, Horde::debug() can be used. Usage:
Horde::debug($variable);
$variable is the variable you wish to debug. The contents of this variable will be dumped into a file named horde_debug.txt in your temporary directory (generally set in horde/config/conf.php in the $conf['tmpdir'] variable). $variable MUST NOT be debug_backtrace().
If you want to manually specify the location of the debug file, you can use the optional second parameter to Horde::debug():
Horde::debug($variable, $filename);
$filename should be the full path to the filename. If using $filename, make sure the directory/file is writable by the user the PHP process runs as.
To enable debugging, see instructions contained in imp/config/backends.php (the 'debug' config parameter).
There are many general purpose debugging tools that can be used to debug Horde code. Tools that the developers include, but are not limited to: