- Xdebug Phpstorm Chrome Extension
- Xdebug Helper Chrome Phpstorm
- Jetbrains Xdebug Chrome
- Phpstorm Xdebug Chrome Not Working
Xdebug is a PHP extension which provides debugging, profiling, code coverage, stack traces and many other capabilities. In this succinct tutorial, I will show us how to set up Xdebug that ships with XAMPP in PhpStorm. See the steps below. Open up php.ini (located at C:path-to-xamppphp) for editing. The following video describes how to debug PHP applications using PHP Xdebug extension and PHPStorm.The video describes this on Windows Xampp installation, b.
With xdebug you can set breakpoints in your code, see all defined variable and even change them while running the code.
To start we need to download the latest Xdebug version from http://xdebug.org/download.php. You have to choose the right version for your installed php version. If you’re using a newer XAMPP version you should already have this file installed under C:xamppphpextphp_xdebug.dll.
- Install Xdebug helper in Chrome. Search the Chrome web store for Xdebug and find the Xdebug helper extension installation. Phpstorm configuration. Make sure that the Xdebug port in phpstorm is also 9000 (the same as wamp’s Xdebug port): File Setting searches for Xdebug in the search box. Open the configuration in the upper right corner, as.
- You can install and use the Xdebug Helper Chrome extension to debug your PhP code from the browser. To use Xdebug Helper with Chrome: Install the Xdebug Helper extension from the Chrome store. Enable the extension in Chrome as shown in the following figure.
- Setup - xdebug phpstorm chrome. PHP remote debugging: XDebug can't connect to JetBrains php Storm client (2) i's like to get remote debugging to work with the following software configuration: Win 7 Pro 64bit WAMP Server 2.2 (32bit) incl. Apache 2.2.22, PHP 5.4.3, XDebug phpxdebug-2.2.1-5.4-vc9.dll JetBrains PHPStorm 4.0.3.
Now that we’ve installed the Xdebug extension we need to configure it to work with our Php and Phpstorm installation. First let’s configure the our Php installation. For this we need to open our php.ini file (C:xamppphpphp.ini)
At the bottom of the file you should see the following commented section for the configuration of Xdebug.
We now need to replace this section with the following code:
Now we need a browser extension to enable the debug mode. For this we can use Xdebug helper from the Chrome Web Store. For now just install the extension.
We can now open our PhpStorm project and enable the debugging mode in “Run”, “Start Listening for PHP Debug Connections”. It’s also a good idea to activate “Break at first line of PHP scripts”. This will stop at every request even if you don’t set a breakpoint.
Now add a breakpoint in your code which you want to debug. You can do this by clicking on the right of the line number. There should appear a red circle at the line which you clicked.
Now open the local website you want to debug and enable the debugging mode in the right corner of the address bar by clicking on debug in the dropdown.
If you now reload the website you should get a new dialog in your PhpStorm window.
Here we have to select the file in which the request starts. In this case it is the index.php in the api directory.
You can now view all the defined variables in your scope with the global variables like $_SERVER, $_COOKIE, $_GET and more. You can also set additional breakpoints, change the value by double clicking on a variable and go step by step through the request.
More information about the configuration is available here:
http://confluence.jetbrains.com/display/PhpStorm/Xdebug+Installation+Guide
https://www.jetbrains.com/phpstorm/quickstart/debugger.html
August 11, 2016Yann Jacquot6 min read

Warning: this article concerns php5 version. If your PHP version is different, replace php5 by php/X.Y in paths (X.Y is your PHP version) and phpX.Y in command. For example :
sudo apt-get install php5-xdebug
becomessudo apt-get install php5.6-xdebug
/etc/php5/mods-available/xdebug.ini
becomes/etc/php/5.6/mods-available/xdebug.ini
I love debuggers. They allow me to understand deep down in my code why something doesn't work, and are even more useful when I work on legacy projects.
When I work on the client side, the browser already provides me all the tools I need to dig deeper than some console.log()
scattered semi-randomly in the source code.
However, I struggled to configure my workspace when I worked on a PHP Symfony2 project hosted in a Vagrant virtual machine.
Step1: Install Xdebug on your Vagrant virtual machine
That may seem obvious, but you need to have Xdebug installed on your virtual machine to benefit from its services.
Then, configure it:
with the following lines:
Finally, if you use php5-fpm, you need to restart it:
If you use Ansible to provision your virtual machine, you can also use a ready-to-action Xdebug role.
Step2: Configure PhpStorm
First, select the 'Edit configurations' item in the 'Run' menu.
Then, add a new 'PHP Remote Debug' configuration.
We will use the IDE key configured in your Vagrant and in your browser.
To fully configure this debugger configuration, you will need to create what PhpStorm calls a server.
- Fill the correct hostname
- Check 'Use path mappings' checkbox, and write the project's absolute path
on your Vagrant virtual machine
Step3: Configure Xdebug
Use Xdebug to debug your web application on Chrome
Now that Vagrant with Xdebug is up and running, let's configure Xdebug Chrome extension.
First, we need to install it from Chrome Web Store
Make sure that the extension is enabled on your browser's extensions list page.
Now, you should see on the right side of the address bar the extension's symbol.
Right-click on it, then click on the 'Options' sub-menu.
You have to use the IDE key previously set.
Xdebug plugin also exists for other browsers.
Finally, in your browser click on the bug in your address bar to switch to the 'Debug' mode
Use Xdebug to debug your APIs route with Postman
Once your Xdebug configuration is added, you need to add ?XDEBUG_SESSION_START=_<XDEBUG_KEYNAME>_
at the end of your route. And that's all!
Use Xdebug to debug commands or unit tests
To use Xdebug for debugging commands or unit tests, first, you need to add xdebug.remote_autostart=true
in XDebug configuration file of your Vagrant xdebug.ini.
Then, you need to specify the xdebug.remote_host
(IP address of your local from your Vagrant) when launching the command from the virtual machine’s terminal.
- First, get the host IP address by using
ifconfig
from your local terminal (the host) :
- Then, launch your command
For instance, if you want to debug your unit tests in a Symfony project, you can run:
Step4: Enjoy!
Now, in PhpStorm you:
- Add your breakpoints by clicking to the left of the lines
Xdebug Phpstorm Chrome Extension
- Click on the bug icon on the upper-right corner
You should now be able to break on the exact line you selected in your IDE.
Bonus: Performance
You need to know that enabling Xdebug slows down your app (x2), the fastest way to disable it is to run the following command: php5dismod xdebug
Use php5enmod xdebug
to enable it back. Each time you'll also need to restart php-fpm or apache.
Troubleshooting: I did the tutorial but Xdebug doesn’t work
It’s probably because a symbolic link is missing in your php conf.
- First type in your virtual machine
php -i | grep xdebug
Xdebug Helper Chrome Phpstorm
If you have no response, it means Xdebug is not set correctly
- Then check if Xdebug is mentioned when running
php -v
from your Vagrant. - If not, add a symbolic link to specify that the Xdebug module should be enabled, for instance (you may need sudo):
Jetbrains Xdebug Chrome
- You should obtain by running
php -v
Phpstorm Xdebug Chrome Not Working
I hope you've made your way through the process and that it will improve your efficiency as much as it does for me. If you have other ways to configure your debugger, feel free to share them in the comments section below.
