Xdebug  
  XDEBUG EXTENSION FOR PHP | DOCUMENTATION - SETTINGS
home | updates | installation | documentation | screenshots | license | support



GENERAL SETTINGS
xdebug.auto_trace [boolean] (default: Off)
When this setting is set to on, the tracing of function calls will be enabled just before the script is run. This makes it possible to trace code in the auto_prepend_file.
xdebug.collect_includes [boolean] (default: On) (Xdebug 2)
This setting, defaulting to On, controls whether Xdebug should write the filename used in include(), include_once(), require() or require_once() to the trace files.
xdebug.collect_params [boolean] (default: Off)
This setting, defaulting to Off, controls whether Xdebug should collect the parameters passed to functions when a function call is recorded in either the function trace or the stack trace. It defaults to Off because for very large scripts it may use huge amounts of memory and therefore make it impossible for the huge script to run. You can most safely turn this setting on, but you can expect some problems in scripts with a lot of functioncalls and/or huge data structures as parameters. Xdebug 2 will not have this problem with increased memory usage, as it will never store this information in memory. Instead it will only be written to disk. This means that you need to have a look at the disk usage though.
xdebug.collect_return [boolean] (default: Off) (Xdebug 2)
This setting, defaulting to Off, controls whether Xdebug should write the return value of function calls to the trace files.
xdebug.default_enable [boolean] (default: On)
If this setting is On then stacktraces will be shown by default on an error event. You can disable showing stacktraces from your code with xdebug_disable(). As this is one of the basic functions of Xdebug, it is advisable to leave this setting set to 'On'.

An example error message may look like:
Warning: Wrong parameter count for str_replace() in /home/httpd/html/test/xdebug_error.html on line 5
Call Stack
#FunctionLocation
1{main}()/home/httpd/html/test/xdebug_error.html:0
2fix_string('Derick')/home/httpd/html/test/xdebug_error.html:8
3str_replace ('a', 'b')/home/httpd/html/test/xdebug_error.html:5
xdebug.extended_info [integer] (default: 1)
Controls whether Xdebug should enforce "extended_info" mode for the PHP parser; this allows Xdebug to do file/line breakpoints with the remote debugger. When tracing or profiling scripts you generally want to turn off this option as PHP's generated oparrays will increase with about a third of the size slowing down your scripts. This setting can not be set in your scripts with ini_set(), but only in php.ini.
xdebug.idekey [string] (default: *complex*)
Controls which IDE Key Xdebug should pass on to the DBGp debugger handler. The default is based on environment settings. First the environment setting DBGP_IDEKEY is consulted, then USER and as last USERNAME. The default is set to the first environment variable that is found. If none could be found the setting has as default "".
xdebug.manual_url [string] (default: http://www.html.net)
This is the base url for the links from the function traces and error message to the manual pages of the function from the message. It is advisable to set this setting to use the closest mirror.
xdebug.show_local_vars [integer] (default: 0) (Xdebug 2)
When this setting is set to something != 0 Xdebug's generated stack dumps in error situations will also show all variables in the top-most scope. Beware that this might generate a lot of information, and is therefore turned off by default.
xdebug.show_mem_delta [integer] (default: 0)
When this setting is set to something != 0 Xdebug's human-readable generated trace files will show the difference in memory usage between function calls. If Xdebug is configured to generate computer-readable trace files then they will always show this information.
xdebug.max_nesting_level [integer] (default: 64 in Xdebug 1, 100 in Xdebug 2)
Controls the protection mechanism for infinite recursion protection. The value of this setting is the maximum level of nested functions that are allowed before the script will be aborted.
xdebug.trace_format [integer] (default: 0) (Xdebug 2)
The format of the trace file.
ValueDescription
0shows a human readable indented trace file with: time index, memory usage, memory delta (if the setting xdebug.show_mem_delta is enabled), level, function name, function parameters (if the setting xdebug.collect_params is enabled, filename and line number.
1writes a computer readable format with the following tab-separated fields: level, time index, memory usage, memory delta since last line, function name, user-defined (1) or internal function (0), name of the include/require file, filename and line number.
xdebug.trace_output_dir [string] (default: /tmp) (Xdebug 2)
The directory where the tracing files will be written to, make sure that the user who the PHP will be running as has write permissions to that directory.
xdebug.trace_options [integer] (default: 0) (Xdebug 2)
When set to "1" the trace files will be appended to, instead of being overwritten in subsequent requests.
xdebug.trace_output_name [string] (default: crc32) (Xdebug 2)
When set to "crc32" the middle part of a trace file name will be a crc32 hash of the current working directory, in all other cases the Process ID of the PHP process is used here.

REMOTE DEBUGGER SETTINGS
xdebug.remote_enable [boolean] (default: Off)
This switch controls whether Xdebug should try to contact a debug client which is listening on the host and port as set with the settings 'xdebug.remote_host' and 'xdebug.remote_port'. If a connection can not be established the script will just continue as if this setting was Off.
xdebug.remote_handler [string] (default: gdb)
Can be either 'php3' which selects the old PHP 3 style debugger output, or 'gdb' which enables the GDB like debugger interface. As there is currently no bundled client for the PHP 3 style debugger and because it's much less powerfull then the GDB like one, it is advised to leave this setting to 'gdb'.
xdebug.remote_host [string] (default: localhost)
Selects the host where the debug client is running, you can either use a host name or an IP address.
xdebug.remote_mode [string] (default: req)
Selects between the 'req' and 'jit' debugging modes for the 'gdb' handler. If it is set to 'req' (the default) then Xdebug will try to connect to the debug client as soon as the script starts. If it is set to 'jit' it will only try to connect as soon as an error condition occurs.
xdebug.remote_port [integer] (default: 17869)
The port to which Xdebug tries to connect on the remote host. As the bundled debug client only listens at the hardcoded port 17689 it is best to leave this setting unchanged.

PROFILER SETTINGS (Xdebug 1)
xdebug.auto_profile [boolean] (default: Off) (Xdebug 1)
This option either enables or disables the automatic initialization of the profiler at the start of the script. By default, automatic is disabled.
xdebug.auto_profile_mode [integer] (default: 0) (Xdebug 1)
Allows you to specify what kind of output would you like the profiler to generate, use the integer value used to represent each profiling mode listed here.
xdebug.output_dir [string] (default: /tmp) (Xdebug 1)
The directory where the profiler output will be written to, make sure that the user who the PHP will be running as has write permissions to that directory. The created files will look something like this: xdebug_[timestamp]_[pid].txt.

PROFILER SETTINGS (Xdebug 2)
xdebug.profiler_enable [integer] (default: 0) (Xdebug 2)
Enables Xdebug's profiler which creates files in the profile output directory. Those files can be read by KCacheGrind to visualize your data. This setting can not be set in your script with ini_set().
xdebug.profiler_output_dir [string] (default: /tmp) (Xdebug 2)
The directory where the profiler output will be written to, make sure that the user who the PHP will be running as has write permissions to that directory. This setting can not be set in your script with ini_set().
xdebug.profiler_output_name [string] (default: crc32) (Xdebug 2)
When set to "crc32" the last part of a profile filename will be a crc32 hash of the current working directory, in all other cases the Process ID of the PHP process is used here. The base name of the generated file is always "cachegrind.out.". An example of a filename is: cachegrind.out.5123 . This setting can not be set in your script with ini_set().

SUPERGLOBAL DUMPING SETTINGS
xdebug.dump.COOKIE [string] (default: Empty)
xdebug.dump.ENV [string] (default: Empty)
xdebug.dump.FILES [string] (default: Empty)
xdebug.dump.GET [string] (default: Empty)
xdebug.dump.POST [string] (default: Empty)
xdebug.dump.REQUEST [string] (default: Empty)
xdebug.dump.SERVER [string] (default: Empty)
xdebug.dump.SESSION [string] (default: Empty)
These seven settings control which data from the superglobals is shown when an error situation occurs. Each php.ini setting can consist of a comma seperated list of variables from this superglobal to dump, but make sure you do not add spaces in this setting. In order to dump the REMOTE_ADDR and the REQUEST_METHOD when an error occurs, add this setting:
xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD
xdebug.dump_once [boolean] (default: On)
Controls whether the values of the superglobals should be dumped on all error situations (set to Off) or only on the first (set to On).
xdebug.dump_undefined [boolean] (default: Off)
If you want to dump undefined values from the superglobals you should set this setting to On, otherwise leave it set to Off.


 
RELEASES
[29-11-2004]
Source:
Debug client 0.8.0 (binary):
[15-09-2004]
Windows modules:
[30-06-2004]
Source:
Modules for 4.3.x (binary):
Debug client 0.7.0 (binary):

DEVELOPMENT VERSION (2.0dev)
Instructions to get Xdebug 2.0dev from CVS can be found here. This version compiles on PHP 4.3.0 and higher.

BINARY SNAPSHOTS (2.0dev)
Modules for 4.3.x-dev:
Modules for 5.0.x-dev:
Modules for 5.1.x-dev:

OLDER RELEASES
Source:

 
 
This site and all of its contents are Copyright © 2002, 2003, 2004 by Derick Rethans.
All rights reserved.