6.0.0-git
2018-12-10
Last Modified 2013-11-27 by Jan Schneider

Debugging Tools For Horde 4 or later

Horde::debug() 1

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.

IMP: IMAP/POP3 Debugging

To enable debugging, see instructions contained in imp/config/backends.php (the 'debug' config parameter).

General Debugging Tools

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:

  • Xdebug: The standard debugging extension for PHP. Beside a few developer niceties, it allows for runtime debugging with breakpoint, step-by-step debugging, introspection, etc. Goes along with browser and IDE extensions like:
  • Wireshark: Especially useful for debugging HTTP-based request to and from the Horde code.