PhpStorm 9.0.0 Help

Enabling Profiling with Xdebug

Xdebug profiler is incorporated in the Xdebug tool. Therefore you first need to download, install, and enable Xdebug itself and after that enable the profiling functionality within it.

To enable profiling with Xdebug, perform these general steps:

Configuring the Xdebug tool

  1. Download and install the Xdebug tool.
  2. Integrate Xdebug with the PHP engine.
  3. Integrate Xdebug with PhpStorm.

Enabling the Xdebug profiler

  1. Open the active php.ini file in the editor:
    1. Open the Settings dialog box by choosing File | Settings, then click PHP under Languages & Frameworks. The PHP page opens.
    2. Click browseButton.png next to the Interpreter field.
    3. In the Interpreters dialog box that opens, the Configuration File read-only field shows the path to the active php.ini file. Click Open in Editor.
  2. Set the xdebug.profiler_enable directive to 1:
    xdebug.profiler_enable = 1;
  3. To enable toggling the profiler from the browser through control over debugger cookies, set the xdebug.profiler_enable_trigger directive to 1:
    xdebug.profiler_enable_trigger = 1;

Configuring the toggling of the profiler from the browser

Specifying the location for storing accumulated profiling data

  1. Open the active php.ini file in the editor:
    1. Open the Settings dialog box by choosing File | Settings, then click PHP under Languages & Frameworks. The PHP page opens.
    2. Click browseButton.png next to the Interpreter field.
    3. In the Interpreters dialog box that opens, the Configuration File read-only field shows the path to the active php.ini file. Click Open in Editor.
  2. Define location for accumulating profiling snapshots by specifying the xdebug.profiler_output_dir directive.
    xdebug.profiler_output_dir = "<output folder name>"
  3. Specify the name of the file to store snapshots in through the value of the xdebug.profiler_output_name directive. The default name is cachegrind.out.%p, where %p is the name format specifier. Accept the default name or define a custom one in compliance with the following standard:
    1. The name should always be cachegrind.out.
    2. Use the supported format specifiers.

See Also

Last modified: 2 July 2015