; This file is updated from https://raw.githubusercontent.com/xdebug/xdebug/master/xdebug.ini ; See http://bugs.xdebug.org/view.php?id=1057 about description how it's produced. ; Load XDebug extension ;zend_extension=xdebug.so ; ----------------------------------------------------------------------------- ; xdebug.auto_trace ; ; Type: boolean, Default value: 0 ; ; 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 [1]. ; ; [1] http://www.php.net/manual/en/configuration.directives.php#ini.auto-prepend-file ; ; ;xdebug.auto_trace = 0 ; ----------------------------------------------------------------------------- ; xdebug.cli_color ; ; Only in Xdebug versions > 2.2 ; ; Type: integer, Default value: 0 ; ; If this setting is 1, Xdebug will color var_dumps and stack traces output when ; in CLI mode and when the output is a tty. On Windows, the ANSICON [1] tool ; needs to be installed. ; ; [1] http://adoxa.110mb.com/ansicon/ ; ; If the setting is 2, then Xdebug will always color var_dumps and stack trace, ; no matter whether it's connected to a tty or whether ANSICON is installed. In ; this case, you might end up seeing escape codes. ; ; See this article [1] for some more information. ; ; [1] http://drck.me/clicolor-9cr ; ; xdebug.cli_color = 1 ; ----------------------------------------------------------------------------- ; xdebug.collect_assignments ; ; Only in Xdebug versions > 2.1 ; ; Type: boolean, Default value: 0 ; ; This setting, defaulting to 0, controls whether Xdebug should add variable ; assignments to function traces. ; ; ;xdebug.collect_assignments = 0 ; ----------------------------------------------------------------------------- ; xdebug.collect_includes ; ; Type: boolean, Default value: 1 ; ; This setting, defaulting to 1, controls whether Xdebug should write the ; filename used in include(), include_once(), require() or require_once() to the ; trace files. ; ; ;xdebug.collect_includes = 1 ; ----------------------------------------------------------------------------- ; xdebug.collect_params ; ; Type: integer, Default value: 0 ; ; This setting, defaulting to 0, 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. ; ; The setting defaults to 0 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 function calls 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. ; ; This setting can have four different values. For each of the values a ; different amount of information is shown. Below you will see what information ; each of the values provides. See also the introduction of the feature Stack ; Traces for a few screenshots. ; ; ===== ======================================================================== ; Value Argument Information Shown ; ===== ======================================================================== ; 0 None. ; ----- ------------------------------------------------------------------------ ; 1 Type and number of elements (f.e. string(6), array(8)). ; ----- ------------------------------------------------------------------------ ; 2 Type and number of elements, with a tool tip for the full information 1. ; ----- ------------------------------------------------------------------------ ; 3 Full variable contents (with the limits respected as set by ; xdebug.var_display_max_children, xdebug.var_display_max_data and ; xdebug.var_display_max_depth. ; ----- ------------------------------------------------------------------------ ; 4 Full variable contents and variable name. ; ----- ------------------------------------------------------------------------ ; 5 PHP serialized variable contents, without the name. ; ; (New in Xdebug 2.3) ; ===== ======================================================================== ; ; 1 in the CLI version of PHP it will not have the tool tip, nor in output ; files. ; ; ;xdebug.collect_params = 0 ; ----------------------------------------------------------------------------- ; xdebug.collect_return ; ; Type: boolean, Default value: 0 ; ; This setting, defaulting to 0, controls whether Xdebug should write the return ; value of function calls to the trace files. ; ; For computerized trace files (xdebug.trace_format=1) this only works from ; Xdebug 2.3 onwards. ; ; ;xdebug.collect_return = 0 ; ----------------------------------------------------------------------------- ; xdebug.collect_vars ; ; Type: boolean, Default value: 0 ; ; This setting tells Xdebug to gather information about which variables are used ; in a certain scope. This analysis can be quite slow as Xdebug has to reverse ; engineer PHP's opcode arrays. This setting will not record which values the ; different variables have, for that use xdebug.collect_params. This setting ; needs to be enabled only if you wish to use xdebug_get_declared_vars(). ; ; ;xdebug.collect_vars = 0 ; ----------------------------------------------------------------------------- ; xdebug.coverage_enable ; ; Only in Xdebug versions >= 2.2 ; ; Type: boolean, Default value: 1 ; ; If this setting is set to 0, then Xdebug will not set-up internal structures ; to allow code coverage. This speeds up Xdebug quite a bit, but of course, Code ; Coverage Analysis won't work. ; ; ;xdebug.coverage_enable = 1 ; ----------------------------------------------------------------------------- ; xdebug.default_enable ; ; Type: boolean, Default value: 1 ; ; If this setting is 1, 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 1. ; ; ;xdebug.default_enable = 1 ; ----------------------------------------------------------------------------- ; xdebug.dump.* ; ; Type: string, Default value: Empty ; ; * can be any of COOKIE, FILES, GET, POST, REQUEST, SERVER, SESSION. These ; seven settings control which data from the superglobals is shown when an error ; situation occurs. ; ; Each of those php.ini setting can consist of a comma separated list of ; variables from this superglobal to dump, or ``*`` for all of them. 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, ; and all GET parameters, add these settings: ; ; xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD ; xdebug.dump.GET = * ; ; ;xdebug.dump.* = Empty ; ----------------------------------------------------------------------------- ; xdebug.dump_globals ; ; Type: boolean, Default value: 1 ; ; Controls whether the values of the superglobals as defined by the ; xdebug.dump.* settings should be shown or not. ; ; ;xdebug.dump_globals = 1 ; ----------------------------------------------------------------------------- ; xdebug.dump_once ; ; Type: boolean, Default value: 1 ; ; Controls whether the values of the superglobals should be dumped on all error ; situations (set to 0) or only on the first (set to 1). ; ; ;xdebug.dump_once = 1 ; ----------------------------------------------------------------------------- ; xdebug.dump_undefined ; ; Type: boolean, Default value: 0 ; ; If you want to dump undefined values from the superglobals you should set this ; setting to 1, otherwise leave it set to 0. ; ; ;xdebug.dump_undefined = 0 ; ----------------------------------------------------------------------------- ; xdebug.extended_info ; ; Type: integer, Default value: 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.extended_info = 1 ; ----------------------------------------------------------------------------- ; xdebug.file_link_format ; ; Only in Xdebug versions > 2.1 ; ; Type: string, Default value: ; ; This setting determines the format of the links that are made in the display ; of stack traces where file names are used. This allows IDEs to set up a ; link-protocol that makes it possible to go directly to a line and file by ; clicking on the filenames that Xdebug shows in stack traces. An example format ; might look like: ; ; myide://%f@%l ; ; The possible format specifiers are: ; ; ========= =============== ; Specifier Meaning ; ========= =============== ; %f the filename ; --------- --------------- ; %l the line number ; ========= =============== ; ; For various IDEs/OSses there are some instructions listed on how to make this ; work: ; ; ---------------- ; Firefox on Linux ; ---------------- ; ; - Open ; ; about:config ; ; - Add a new boolean setting "network.protocol-handler.expose.xdebug" ; ; - Add the following into a shell script ; ; ``~/bin/ff-xdebug.sh``: ; ; #! /bin/sh ; ; f=`echo $1 | cut -d @ -f 1 | sed 's/xdebug:\/\///'` ; l=`echo $1 | cut -d @ -f 2` ; ; Add to that one of (depending whether you have komodo or gvim): ; ; - komodo $f -l $l ; ; - gvim --remote-tab +$l $f ; ; - Make the script executable with ; ; chmod +x ~/bin/ff-xdebug.sh ; ; - Set the xdebug.file_link_format setting to ; ; xdebug://%f@%l ; ; -------------------- ; Windows and netbeans ; -------------------- ; ; - Create the file ; ; ``netbeans.bat`` and save it in your path ( ``C:\Windows`` will work): ; ; @echo off ; setlocal enableextensions enabledelayedexpansion ; set NETBEANS=%1 ; set FILE=%~2 ; %NETBEANS% --nosplash --console suppress --open "%FILE:~19%" ; nircmd win activate process netbeans.exe ; ; **Note:** Remove the last line if you don't have ``nircmd``. ; ; - Save the following code as ; ; ``netbeans_protocol.reg``: ; ; Windows Registry Editor Version 5.00 ; ; [HKEY_CLASSES_ROOT\netbeans] ; "URL Protocol"="" ; @="URL:Netbeans Protocol" ; ; [HKEY_CLASSES_ROOT\netbeans\DefaultIcon] ; @="\"C:\\Program Files\\NetBeans 7.1.1\\bin\\netbeans.exe,1\"" ; ; [HKEY_CLASSES_ROOT\netbeans\shell] ; ; [HKEY_CLASSES_ROOT\netbeans\shell\open] ; ; [HKEY_CLASSES_ROOT\netbeans\shell\open\command] ; @="\"C:\\Windows\\netbeans.bat\" \"C:\\Program Files\\NetBeans 7.1.1\\bin\\netbeans.exe\" \"%1\"" ; ; **Note:** Make sure to change the path to Netbeans (twice), as well as the ; ``netbeans.bat`` batch file if you saved it somewhere else than ; ``C:\Windows\``. ; ; - Double click on the ; ; ``netbeans_protocol.reg`` file to import it into the registry. ; ; - Set the xdebug.file_link_format setting to ; ; xdebug.file_link_format = ; "netbeans://open/?f=%f:%l" ; ; ;xdebug.file_link_format = ; ----------------------------------------------------------------------------- ; xdebug.force_display_errors ; ; Only in Xdebug versions 2.3 ; ; Type: int, Default value: 0 ; ; If this setting is set to ``1`` then errors will **always** be displayed, no ; matter what the setting of PHP's display_errors [1] is. ; ; [1] http://php.net/manual/en/errorfunc.configuration.php#ini.display-errors ; ; ;xdebug.force_display_errors = 0 ; ----------------------------------------------------------------------------- ; xdebug.force_error_reporting ; ; Only in Xdebug versions 2.3 ; ; Type: int, Default value: 0 ; ; This setting is a bitmask, like error_reporting [1]. This bitmask will be ; logically ORed with the bitmask represented by error_reporting [2] to dermine ; which errors should be displayed. This setting can only be made in php.ini and ; allows you to force certain errors from being shown no matter what an ; application does with ini_set() [3]. ; ; [1] http://php.net/manual/en/errorfunc.configuration.php#ini.error-reporting ; [2] http://php.net/manual/en/errorfunc.configuration.php#ini.error-reporting ; [3] http://php.net/manual/en/function.ini-set.php ; ; ;xdebug.force_error_reporting = 0 ; ----------------------------------------------------------------------------- ; xdebug.halt_level ; ; Only in Xdebug versions 2.3 ; ; Type: int, Default value: 0 ; ; This setting allows you to configure a mask that determines whether, and ; which, notices and/or warnings get converted to errors. You can configure ; notices and warnings that are generated by PHP, and notices and warnings that ; you generate yourself (by means of trigger_error()). For example, to convert ; the warning of strlen() (without arguments) to an error, you would do: ; ; ini_set('xdebug.halt_level', E_WARNING); ; echo "Hi!\n"; ; ; Which will then result in the showing of the error message, and the abortion ; of the script. ``echo "Hi!\n";`` will not be executed. ; ; The setting is a bit mask, so to convert all notices and warnings into errors ; for all applications, you can set this in php.ini: ; ; xdebug.halt_level=E_WARNING|E_NOTICE|E_USER_WARNING|E_USER_NOTICE ; ; The bitmask only supports the four level that are mentioned above. ; ; ;xdebug.halt_level = 0 ; ----------------------------------------------------------------------------- ; xdebug.idekey ; ; Type: string, Default value: *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 ''. If this setting is set, it always overrides the ; environment variables. ; ; ;xdebug.idekey = *complex* ; ----------------------------------------------------------------------------- ; xdebug.manual_url ; ; Only in Xdebug versions < 2.2.1 ; ; Type: string, Default value: http://www.php.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.manual_url = http://www.php.net ; ----------------------------------------------------------------------------- ; xdebug.max_nesting_level ; ; Type: integer, Default value: 100 ; ; 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.max_nesting_level = 250 ; ----------------------------------------------------------------------------- ; xdebug.overload_var_dump ; ; Only in Xdebug versions > 2.1 ; ; Type: boolean, Default value: 1 ; ; By default Xdebug overloads var_dump() with its own improved version for ; displaying variables when the html_errors php.ini setting is set to 1. In case ; you do not want that, you can set this setting to 0, but check first if it's ; not smarter to turn off html_errors. ; ; You can also use ``2`` as value for this setting. Besides formatting the ; var_dump() output nicely, it will also add filename and line number to the ; output. The xdebug.file_link_format setting is also respected. *(New in Xdebug ; 2.3)* ; ; ;xdebug.overload_var_dump = 1 ; ----------------------------------------------------------------------------- ; xdebug.profiler_append ; ; Type: integer, Default value: 0 ; ; When this setting is set to 1, profiler files will not be overwritten when a ; new request would map to the same file (depnding on the ; xdebug.profiler_output_name setting. Instead the file will be appended to with ; the new profile. ; ; ;xdebug.profiler_append = 0 ; ----------------------------------------------------------------------------- ; xdebug.profiler_enable ; ; Type: integer, Default value: 0 ; ; 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(). If you want to selectively ; enable the profiler, please set xdebug.profiler_enable_trigger to 1 ; **instead** of using this setting. ; ; ;xdebug.profiler_enable = 0 ; ----------------------------------------------------------------------------- ; xdebug.profiler_enable_trigger ; ; Type: integer, Default value: 0 ; ; When this setting is set to 1, you can trigger the generation of profiler ; files by using the XDEBUG_PROFILE GET/POST parameter, or set a cookie with the ; name XDEBUG_PROFILE. This will then write the profiler data to defined ; directory. In order to prevent the profiler to generate profile files for each ; request, you need to set xdebug.profiler_enable to 0. ; ; ;xdebug.profiler_enable_trigger = 0 ; ----------------------------------------------------------------------------- ; xdebug.profiler_output_dir ; ; Type: string, Default value: /tmp ; ; 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_dir = /tmp ; ----------------------------------------------------------------------------- ; xdebug.profiler_output_name ; ; Type: string, Default value: cachegrind.out.%p ; ; This setting determines the name of the file that is used to dump traces into. ; The setting specifies the format with format specifiers, very similar to ; sprintf() and strftime(). There are several format specifiers that can be used ; to format the file name. ; ; See the xdebug.trace_output_name documentation for the supported specifiers. ; ; ;xdebug.profiler_output_name = cachegrind.out.%p ; ----------------------------------------------------------------------------- ; xdebug.remote_autostart ; ; Type: boolean, Default value: 0 ; ; Normally you need to use a specific HTTP GET/POST variable to start remote ; debugging (see Remote Debugging). When this setting is set to 1, Xdebug will ; always attempt to start a remote debugging session and try to connect to a ; client, even if the GET/POST/COOKIE variable was not present. ; ; ;xdebug.remote_autostart = 0 ; ----------------------------------------------------------------------------- ; xdebug.remote_connect_back ; ; Only in Xdebug versions > 2.1 ; ; Type: boolean, Default value: 0 ; ; If enabled, the xdebug.remote_host setting is ignored and Xdebug will try to ; connect to the client that made the HTTP request. It checks the ; $_SERVER['REMOTE_ADDR'] variable to find out which IP address to use. Please ; note that there is **no** filter available, and anybody who can connect to the ; webserver will then be able to start a debugging session, even if their ; address does not match xdebug.remote_host. ; ; ;xdebug.remote_connect_back = 0 ; ----------------------------------------------------------------------------- ; xdebug.remote_cookie_expire_time ; ; Only in Xdebug versions > 2.1 ; ; Type: integer, Default value: 3600 ; ; This setting can be used to increase (or decrease) the time that the remote ; debugging session stays alive via the session cookie. ; ; ;xdebug.remote_cookie_expire_time = 3600 ; ----------------------------------------------------------------------------- ; xdebug.remote_enable ; ; Type: boolean, Default value: 0 ; ; 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 0. ; ; ;xdebug.remote_enable = 0 ; ----------------------------------------------------------------------------- ; xdebug.remote_handler ; ; Type: string, Default value: dbgp ; ; Can be either 'php3' which selects the old PHP 3 style debugger [1] output, ; 'gdb' which enables the GDB like debugger interface or 'dbgp' - the debugger ; protocol [2]. The DBGp protocol is the only supported protocol. ; ; [1] http://www.php.net/manual/en/debugger.php ; [2] http://xdebug.org/docs-dbgp.php ; ; **Note**: Xdebug 2.1 and later only support 'dbgp' as protocol. ; ; ;xdebug.remote_handler = dbgp ; ----------------------------------------------------------------------------- ; xdebug.remote_host ; ; Type: string, Default value: localhost ; ; Selects the host where the debug client is running, you can either use a host ; name or an IP address. This setting is ignored if xdebug.remote_connect_back ; is enabled. ; ; ;xdebug.remote_host = localhost ; ----------------------------------------------------------------------------- ; xdebug.remote_log ; ; Type: string, Default value: ; ; If set to a value, it is used as filename to a file to which all remote ; debugger communications are logged. The file is always opened in append-mode, ; and will therefore not be overwritten by default. There is no concurrency ; protection available. The format of the file looks something like: ; ; Log opened at 2007-05-27 14:28:15 ; ->