Current Path : /etc/php.d/ |
Current File : //etc/php.d/15-xdebug.ini.rpmnew |
; Enable xdebug extension module zend_extension=xdebug.so ; Configuration ; See https://xdebug.org/docs/all_settings ; for Xdebug 2.9.8 — do not modify by hand ; ----------------------------------------------------------------------------- ; xdebug.auto_trace ; ; Type: boolean, Default value: false ; ; 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] https://www.php.net/manual/ini.core.php#ini.auto-prepend-file ; ; ;xdebug.auto_trace = false ; ----------------------------------------------------------------------------- ; xdebug.cli_color ; ; Introduced in version 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.altervista.org/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] https://derickrethans.nl/cli-color.html ; ; ;xdebug.cli_color = 0 ; ----------------------------------------------------------------------------- ; xdebug.collect_assignments ; ; Introduced in version 2.1 ; ; Type: boolean, Default value: false ; ; This setting, defaulting to 0, controls whether Xdebug should add variable ; assignments to function traces. ; ; From Xdebug 2.6, assign-by-var ( ``=&``) assignments are included too. ; ; ;xdebug.collect_assignments = false ; ----------------------------------------------------------------------------- ; xdebug.collect_includes ; ; Type: boolean, Default value: true ; ; 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 = true ; ----------------------------------------------------------------------------- ; 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: false ; ; 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 = false ; ----------------------------------------------------------------------------- ; xdebug.collect_vars ; ; Type: boolean, Default value: false ; ; 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 = false ; ----------------------------------------------------------------------------- ; xdebug.coverage_enable ; ; Introduced in version 2.2 ; ; Type: boolean, Default value: true ; ; If this setting is set to ``false``, 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 = true ; ----------------------------------------------------------------------------- ; xdebug.default_enable ; ; Type: boolean, Default value: true ; ; 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 = true ; ----------------------------------------------------------------------------- ; 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 seperated 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: true ; ; When this setting is set to ``true``, Xdebug adds the values of the super ; globals as configured through the xdebug.dump.* to on-screen stack traces and ; the error log (if enabled). ; ; ;xdebug.dump_globals = true ; ----------------------------------------------------------------------------- ; xdebug.dump_once ; ; Type: boolean, Default value: true ; ; 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 = true ; ----------------------------------------------------------------------------- ; xdebug.dump_undefined ; ; Type: boolean, Default value: false ; ; 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 = false ; ----------------------------------------------------------------------------- ; xdebug.file_link_format ; ; Introduced in version 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" and set ; it to "false" ; ; - 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, gvim or netbeans): ; ; - komodo $f -l $l ; ; - gvim --remote-tab +$l $f ; ; - netbeans "$f:$l" ; ; - 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.filename_format ; ; Introduced in version 2.6 ; ; Type: string, Default value: ...%s%n ; ; This setting determines the format with which Xdebug renders filenames in HTML ; stack traces (default: ``...%s%n``) and location information through the ; overloaded xdebug_var_dump() (default: ``%f``). ; ; The possible format specifiers are listed in this table. The example output is ; rendered according to the full path ; ``/var/www/vendor/mail/transport/mta.php``. ; ; ========= ============================================== =========================================================== ; Specifier Meaning Example Output ; ========= ============================================== =========================================================== ; %a Ancester: Two directory elements and filename mail/transport/mta.php ; --------- ---------------------------------------------- ----------------------------------------------------------- ; %f Full path /var/www/vendor/mail/transport/mta.php ; --------- ---------------------------------------------- ----------------------------------------------------------- ; %n Name: Only the file name mta.php ; --------- ---------------------------------------------- ----------------------------------------------------------- ; %p Parent: One directory element and the filename transport/mta.php ; --------- ---------------------------------------------- ----------------------------------------------------------- ; %s Directory separator / ; on Linux, OSX and other Unix-like systems, ``\`` on Windows ; ========= ============================================== =========================================================== ; ; ;xdebug.filename_format = ...%s%n ; ----------------------------------------------------------------------------- ; xdebug.force_display_errors ; ; Introduced in version 2.3 ; ; Type: integer, 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] https://www.php.net/manual/errorfunc.configuration.php#ini.display-errors ; ; ;xdebug.force_display_errors = 0 ; ----------------------------------------------------------------------------- ; xdebug.force_error_reporting ; ; Introduced in version 2.3 ; ; Type: integer, 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] https://www.php.net/manual/errorfunc.configuration.php#ini.error-reporting ; [2] https://www.php.net/manual/errorfunc.configuration.php#ini.error-reporting ; [3] https://www.php.net/manual/function.ini-set.php ; ; ;xdebug.force_error_reporting = 0 ; ----------------------------------------------------------------------------- ; xdebug.gc_stats_enable ; ; Introduced in version 2.6 ; ; Type: bool, Default value: false ; ; If this setting is enabled, then statistics for garbage collection runs are ; automatically collected into the given directory set with ; xdebug.gc_stats_output_dir and with an automatically generated name configured ; by xdebug.gc_stats_output_name. ; ; ;xdebug.gc_stats_enable = false ; ----------------------------------------------------------------------------- ; xdebug.gc_stats_output_dir ; ; Introduced in version 2.6 ; ; Type: string, Default value: /tmp ; ; The directory where the garbage collection statistics 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.gc_stats_output_dir = /tmp ; ----------------------------------------------------------------------------- ; xdebug.gc_stats_output_name ; ; Introduced in version 2.6 ; ; Type: string, Default value: gcstats.%p ; ; This setting determines the name of the file that is used to dump garbage ; collection statistics 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.gc_stats_output_name = gcstats.%p ; ----------------------------------------------------------------------------- ; xdebug.halt_level ; ; Introduced in version 2.3 ; ; Type: integer, 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); ; strlen(); ; 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.max_nesting_level ; ; Type: integer, Default value: 256 ; ; 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. ; ; Before Xdebug 2.6, this would create a fatal exception if exceeded. From ; Xdebug 2.6 and later, an "Error [1]" exception is thrown instead. ; ; [1] https://www.php.net/manual/class.error.php ; ; Before Xdebug 2.3, the default value was ``100``. ; ; ;xdebug.max_nesting_level = 256 ; ----------------------------------------------------------------------------- ; xdebug.max_stack_frames ; ; Introduced in version 2.3 ; ; Type: integer, Default value: -1 ; ; Controls how many stack frames are shown in stack traces, both on the command ; line during PHP error stack traces, as well as in the browser for HTML traces. ; ; ;xdebug.max_stack_frames = -1 ; ----------------------------------------------------------------------------- ; xdebug.overload_var_dump ; ; Introduced in version 2.1 ; ; Type: integer, Default value: 2 ; ; By default Xdebug overloads var_dump() with its own improved version for ; displaying variables when the html_errors [1] php.ini setting is set to ; ``true``. 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``. ; ; [1] https://www.php.net/manual/en/errorfunc.configuration.php#ini.html-errors ; ; *New in Xdebug 2.3*: 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. ; ; *Before Xdebug 2.4*: the default value of this setting was ``1``. ; ; ;xdebug.overload_var_dump = 2 ; ----------------------------------------------------------------------------- ; 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 (depending 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. Access to the trigger ; itself can be configured through xdebug.profiler_enable_trigger_value. ; ; ;xdebug.profiler_enable_trigger = 0 ; ----------------------------------------------------------------------------- ; xdebug.profiler_enable_trigger_value ; ; Introduced in version 2.3 ; ; Type: string, Default value: "" ; ; This setting can be used to restrict who can make use of the XDEBUG_PROFILE ; functionality as outlined in xdebug.profiler_enable_trigger. When changed from ; its default value of an empty string, the value of the cookie, GET or POST ; argument needs to match the shared secret set with this setting in order for ; the profiler to start. ; ; ;xdebug.profiler_enable_trigger_value = "" ; ----------------------------------------------------------------------------- ; 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_addr_header ; ; Introduced in version 2.4 ; ; Type: string, Default value: "" ; ; If xdebug.remote_addr_header is configured to be a non-empty string, then the ; value is used as key in the $SERVER superglobal array to determine which ; header to use to find the IP address or hostname to use for 'connecting back ; to'. This setting is only used in combination with xdebug.remote_connect_back ; and is otherwise ignored. ; ; ;xdebug.remote_addr_header = "" ; ----------------------------------------------------------------------------- ; xdebug.remote_autostart ; ; Type: boolean, Default value: false ; ; Normally you need to use a specific HTTP GET/POST variable to start remote ; debugging (see Step 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 = false ; ----------------------------------------------------------------------------- ; xdebug.remote_connect_back ; ; Introduced in version 2.1 ; ; Type: boolean, Default value: false ; ; 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['HTTP_X_FORWARDED_FOR'] and $_SERVER['REMOTE_ADDR'] variables to find ; out which IP address to use. ; ; If xdebug.remote_addr_header is configured, then the $SERVER variable with the ; configured name will be checked before the $_SERVER['HTTP_X_FORWARDED_FOR'] ; and $_SERVER['REMOTE_ADDR'] variables. ; ; This setting does not apply for debugging through the CLI, as the $SERVER ; header variables are not available there. ; ; 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 = false ; ----------------------------------------------------------------------------- ; xdebug.remote_cookie_expire_time ; ; Introduced in version 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: false ; ; 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 = false ; ----------------------------------------------------------------------------- ; xdebug.remote_host ; ; Type: string, Default value: localhost ; ; Selects the host where the debug client is running, you can either use a host ; name, IP address, or 'unix:///path/to/sock' for a Unix domain socket. This ; setting is ignored if xdebug.remote_connect_back is enabled. ; ; Support for Unix domain sockets was introduced in Xdebug 2.6. ; ; ;xdebug.remote_host = localhost ; ----------------------------------------------------------------------------- ; xdebug.remote_log ; ; Type: string, Default value: ; ; Configures a file name to log all Step Debugging connection attempts, ; failures, and communication. ; ; Enable this functionality by setting the value to a absolute path. Make sure ; that the system user that PHP runs at (such as ``www-data`` if you are running ; with Apache) can create and write to the file. ; ; The file is opened in append-mode, and will therefore not be overwritten by ; default. There is no concurrency protection available. ; ; When succesfully enabled, the log file will include any attempt that Xdebug ; makes to connect to an IDE: ; ; [1603325] Log opened at 2020-06-21 17:54:05 ; [1603325] I: Connecting to configured address/port: localhost:9000. ; [1603325] W: Creating socket for 'localhost:9000', poll success, but error: Operation now in progress (29). ; [1603325] I: Connected to client. :-) ; ; It includes the opening time ( ``2020-06-21 17:54:05``), the IP/Hostname and ; port Xdebug is trying to connect to ( ``localhost:9000``), and whether it ; succeeded ( ``Connected to client :-)``). The number in brackets ( ; ``[1603325]``) is the Process ID. ; ; It also logs the debugging communication itself, which starts with the ; ``<init`` XML element: ; ; <init ; xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" ; fileuri="file:///home/httpd/www.xdebug.org/html/router.php" ; language="PHP" xdebug:language_version="7.4.2-dev" ; protocol_version="1.0" appid="1603325" idekey="XDEBUG_ECLIPSE"> ; <engine version="2.9.6-dev"><![CDATA[Xdebug]]></engine> ; <author><![CDATA[Derick Rethans]]></author> ; <url><![CDATA[https://xdebug.org]]></url> ; <copyright><![CDATA[Copyright (c) 2002-2020 by Derick Rethans]]></copyright> ; </init> ; ; The ``fileuri`` attribute lists the entry point of your application, which can ; be useful to compare to ``breakpoint_set`` commands to see if path mappings ; are set-up correctly. ; ; Beyond the ``<init`` element, you will find the configuration of features [1]: ; ; [1] /docs/dbgp#feature-names ; ; <- feature_set -i 4 -n extended_properties -v 1 ; -> <response ; xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" ; command="feature_set" transaction_id="4" feature="extended_properties" success="1"> ; </response> ; ; And continuation commands [1]: ; ; [1] /docs/dbgp#continuation-commands ; ; <- step_into -i 9 ; -> <response ; xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" ; command="step_into" transaction_id="9" ; status="break" reason="ok"> ; <xdebug:message filename="file:///home/httpd/www.xdebug.org/html/router.php" lineno="3"> ; </xdebug:message> ; </response> ; ; You can read about DBGP - A common debugger protocol specification at its ; dedicated documation page. ; ; The xdebug.remote_log_level setting controls how much information is logged. ; ; **Note:** Many Linux distributions now use systemd, which implements **private ; tmp** directories. This means that when PHP is run through a web server or as ; PHP-FPM, the ``/tmp`` directory is prefixed with something akin to: ; ; /tmp/systemd-private-ea3cfa882b4e478993e1994033fc5feb-apache.service-FfWZRg ; ; ;xdebug.remote_log = ; ----------------------------------------------------------------------------- ; xdebug.remote_log_level ; ; Introduced in version 2.8 ; ; Type: integer, Default value: 7 ; ; Configures which logging messages should be emitted by the Step Debugging. ; ; The following levels are supported: ; ; ===== ============= ================================ ; Level Name Example ; ===== ============= ================================ ; 1 Errors Connection errors ; ----- ------------- -------------------------------- ; 3 Warnings Connection warnings ; ----- ------------- -------------------------------- ; 5 Communication Protocol messages ; ----- ------------- -------------------------------- ; **7** Information Information while connecting ; ----- ------------- -------------------------------- ; 10 Debug Breakpoint resolving information ; ===== ============= ================================ ; ; ;xdebug.remote_log_level = 7 ; ----------------------------------------------------------------------------- ; xdebug.remote_mode ; ; Type: string, Default value: req ; ; Selects when a debug connection is initiated. This setting can have two ; different values: ; ; req ; Xdebug will try to connect to the debug client as soon as the script ; starts. ; ; jit ; Xdebug will only try to connect to the debug client as soon as an error ; condition occurs. ; ; ;xdebug.remote_mode = req ; ----------------------------------------------------------------------------- ; xdebug.remote_port ; ; Type: integer, Default value: 9000 ; ; The port to which Xdebug tries to connect on the remote host. Port 9000 is the ; default for both Xdebug and the Command Line Debug Client. As many clients use ; this port number, it is best to leave this setting unchanged. ; ; ;xdebug.remote_port = 9000 ; ----------------------------------------------------------------------------- ; xdebug.remote_timeout ; ; Introduced in version 2.6 ; ; Type: integer, Default value: 200 ; ; The amount of time in milliseconds that Xdebug will wait for on an IDE to ; acknowledge an incoming debugging connection. The default value of 200 ms ; should in most cases be enough. In case you often get dropped debugging ; requests, perhaps because you have a high latency network, or a development ; box far away from your IDE, or have a slow firewall, then you can should ; increase this value. ; ; Please note that increasing this value might mean that your requests seem to ; 'hang' in case Xdebug tries to establish a connection, but your IDE is not ; listening. ; ; ;xdebug.remote_timeout = 200 ; ----------------------------------------------------------------------------- ; xdebug.scream ; ; Introduced in version 2.1 ; ; Type: boolean, Default value: false ; ; If this setting is 1, then Xdebug will disable the @ (shut-up) operator so ; that notices, warnings and errors are no longer hidden. ; ; ;xdebug.scream = false ; ----------------------------------------------------------------------------- ; xdebug.show_error_trace ; ; Introduced in version 2.4 ; ; Type: integer, Default value: 0 ; ; When this setting is set to 1, Xdebug will show a stack trace whenever an ; Error is raised - even if this Error is actually caught. ; ; ;xdebug.show_error_trace = 0 ; ----------------------------------------------------------------------------- ; xdebug.show_exception_trace ; ; Type: integer, Default value: 0 ; ; When this setting is set to 1, Xdebug will show a stack trace whenever an ; Exception or Error is raised - even if this Exception or Error is actually ; caught. ; ; Error 'exceptions' were introduced in PHP 7. ; ; ;xdebug.show_exception_trace = 0 ; ----------------------------------------------------------------------------- ; xdebug.show_local_vars ; ; Type: integer, Default value: 0 ; ; 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_local_vars = 0 ; ----------------------------------------------------------------------------- ; xdebug.show_mem_delta ; ; Type: integer, Default value: 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.show_mem_delta = 0 ; ----------------------------------------------------------------------------- ; xdebug.trace_enable_trigger ; ; Introduced in version 2.2 ; ; Type: boolean, Default value: false ; ; When this setting is set to 1, you can trigger the generation of trace files ; by using the XDEBUG_TRACE GET/POST parameter, or set a cookie with the name ; XDEBUG_TRACE. This will then write the trace data to defined directory. In ; order to prevent Xdebug to generate trace files for each request, you need to ; set xdebug.auto_trace to 0. Access to the trigger itself can be configured ; through xdebug.trace_enable_trigger_value. ; ; ;xdebug.trace_enable_trigger = false ; ----------------------------------------------------------------------------- ; xdebug.trace_enable_trigger_value ; ; Introduced in version 2.3 ; ; Type: string, Default value: "" ; ; This setting can be used to restrict who can make use of the XDEBUG_TRACE ; functionality as outlined in xdebug.trace_enable_trigger. When changed from ; its default value of an empty string, the value of the cookie, GET or POST ; argument needs to match the shared secret set with this setting in order for ; the trace file to be generated. ; ; ;xdebug.trace_enable_trigger_value = "" ; ----------------------------------------------------------------------------- ; xdebug.trace_format ; ; Type: integer, Default value: 0 ; ; The format of the trace file. ; ; ===== ============================================================================== ; Value Description ; ===== ============================================================================== ; 0 shows 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*. ; ----- ------------------------------------------------------------------------------ ; 1 writes a computer readable format which has two different records. There are ; different records for entering a stack frame, and leaving a stack frame. The ; table below lists the fields in each type of record. Fields are tab separated. ; ----- ------------------------------------------------------------------------------ ; 2 writes a trace formatted in (simple) HTML. ; ===== ============================================================================== ; ; Fields for the computerized format: ; ; =========== ===== ========== ========== ========== ============ ============= ========================================= =================================== ======== =========== ================ ============================================================ ; Record type 1 2 3 4 5 6 7 8 9 10 11 12 - ... ; =========== ===== ========== ========== ========== ============ ============= ========================================= =================================== ======== =========== ================ ============================================================ ; Entry level function # always '0' time index memory usage function name user-defined (1) or internal function (0) name of the include or require file filename line number no. of arguments arguments (as many as specified in field 11) - tab separated ; ----------- ----- ---------- ---------- ---------- ------------ ------------- ----------------------------------------- ----------------------------------- -------- ----------- ---------------- ------------------------------------------------------------ ; Exit level function # always '1' time index memory usage empty ; ----------- ----- ---------- ---------- ---------- ------------ ------------- ----------------------------------------- ----------------------------------- -------- ----------- ---------------- ------------------------------------------------------------ ; Return level function # always 'R' empty return value empty ; =========== ===== ========== ========== ========== ============ ============= ========================================= =================================== ======== =========== ================ ============================================================ ; ; See the introduction of Function Traces for a few examples. ; ; ;xdebug.trace_format = 0 ; ----------------------------------------------------------------------------- ; xdebug.trace_options ; ; Type: integer, Default value: 0 ; ; When set to '1' the trace files will be appended to, instead of being ; overwritten in subsequent requests. ; ; ;xdebug.trace_options = 0 ; ----------------------------------------------------------------------------- ; xdebug.trace_output_dir ; ; Type: string, Default value: /tmp ; ; 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_output_dir = /tmp ; ----------------------------------------------------------------------------- ; xdebug.trace_output_name ; ; Type: string, Default value: trace.%c ; ; 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. The '.xt' extension is always added automatically. ; ; The possible format specifiers are: ; ; ========= ====================================== ================= ==================================================== ; Specifier Meaning Example Format Example Filename ; ========= ====================================== ================= ==================================================== ; %c crc32 of the current working directory trace.%c trace.1258863198.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %p pid trace.%p trace.5174.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %r random number trace.%r trace.072db0.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %s script name 2 cachegrind.out.%s cachegrind.out._home_httpd_html_test_xdebug_test_php ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %t timestamp (seconds) trace.%t trace.1179434742.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %u timestamp (microseconds) trace.%u trace.1179434749_642382.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %H $_SERVER['HTTP_HOST'] trace.%H trace.kossu.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %R $_SERVER['REQUEST_URI'] trace.%R trace._test_xdebug_test_php_var=1_var2=2.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %U $_SERVER['UNIQUE_ID'] trace.%U trace.TRX4n38AAAEAAB9gBFkAAAAB.xt ; ; 3 ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %S session_id (from $_COOKIE if set) trace.%S trace.c70c1ec2375af58f74b390bbdd2a679d.xt ; --------- -------------------------------------- ----------------- ---------------------------------------------------- ; %% literal % trace.%% trace.%%.xt ; ========= ====================================== ================= ==================================================== ; ; 2 This one is only available for trace file names since Xdebug 2.6. ; ; 3 New in version 2.2. This one is set by Apache's mod_unique_id module [1] ; ; [1] http://httpd.apache.org/docs/current/mod/mod_unique_id.html ; ; ;xdebug.trace_output_name = trace.%c ; ----------------------------------------------------------------------------- ; xdebug.var_display_max_children ; ; Type: integer, Default value: 128 ; ; Controls the amount of array children and object's properties are shown when ; variables are displayed with either xdebug_var_dump(), xdebug.show_local_vars ; or through Function Traces. ; ; To disable any limitation, use *-1* as value. ; ; This setting does not have any influence on the number of children that is ; send to the client through the Step Debugging feature. ; ; ;xdebug.var_display_max_children = 128 ; ----------------------------------------------------------------------------- ; xdebug.var_display_max_data ; ; Type: integer, Default value: 512 ; ; Controls the maximum string length that is shown when variables are displayed ; with either xdebug_var_dump(), xdebug.show_local_vars or through Function ; Traces. ; ; To disable any limitation, use *-1* as value. ; ; This setting does not have any influence on the number of children that is ; send to the client through the Step Debugging feature. ; ; ;xdebug.var_display_max_data = 512 ; ----------------------------------------------------------------------------- ; xdebug.var_display_max_depth ; ; Type: integer, Default value: 3 ; ; Controls how many nested levels of array elements and object properties are ; when variables are displayed with either xdebug_var_dump(), ; xdebug.show_local_vars or through Function Traces. ; ; The maximum value you can select is 1023. You can also use *-1* as value to ; select this maximum number. ; ; This setting does not have any influence on the number of children that is ; send to the client through the Step Debugging feature. ; ; ;xdebug.var_display_max_depth = 3