How to install xdebug on your local version of Mac OS PHP and enable it in PhpStorm for local development? In this tutorial we will explain you how.
Install xdebug on your MAC OS CATALINA
In order to use xdebug we have to install it. There is a lot of tutorials on the internet, but i found this process easiest.
Actually we will update our local version of PHP with the latest PHP version with included xdebug (and bunch of others extensions: zip, redis, curl...).
Detailed steps how to do that you can find here
After we updated our php version, make sure that we have xdebug installed:
Install xdebug on your MAC OS CATALINA
In order to use xdebug we have to install it. There is a lot of tutorials on the internet, but i found this process easiest.
Actually we will update our local version of PHP with the latest PHP version with included xdebug (and bunch of others extensions: zip, redis, curl...).
Detailed steps how to do that you can find here
After we updated our php version, make sure that we have xdebug installed:
php -m
if you can not see the extension, make sure that you are using newly installed version:
php -v
if you still do not see the newly installed PHP version, use this command:
export PATH=/usr/local/php5/bin:$PATH
after this you should see this (in our case we have installed PHP 7.3.8 version):
ok, now if you type php -m you should see xdebug on the list
Set up XDEBUG with PhP Storm
FInd your PHP ini settings for xdebug, type:
php --ini
You should get the list of php ini file used for your instance of PHP:
Configuration File (php.ini) Path: /usr/local/php5/lib Loaded Configuration File: /usr/local/php5/lib/php.ini Scan for additional .ini files in: /usr/local/php5/php.d Additional .ini files parsed: /usr/local/php5/php.d/10-extension_dir.ini, /usr/local/php5/php.d/20-extension-opcache.ini, /usr/local/php5/php.d/40-curl.ini, /usr/local/php5/php.d/40-openssl.ini, /usr/local/php5/php.d/50-extension-apcu.ini, /usr/local/php5/php.d/50-extension-curl.ini, /usr/local/php5/php.d/50-extension-gmp.ini, /usr/local/php5/php.d/50-extension-igbinary.ini, /usr/local/php5/php.d/50-extension-imap.ini, /usr/local/php5/php.d/50-extension-intl.ini, /usr/local/php5/php.d/50-extension-mcrypt.ini, /usr/local/php5/php.d/50-extension-mongodb.ini, /usr/local/php5/php.d/50-extension-mssql.ini, /usr/local/php5/php.d/50-extension-pdo_pgsql.ini, /usr/local/php5/php.d/50-extension-pgsql.ini, /usr/local/php5/php.d/50-extension-propro.ini, /usr/local/php5/php.d/50-extension-raphf.ini, /usr/local/php5/php.d/50-extension-readline.ini, /usr/local/php5/php.d/50-extension-redis.ini, /usr/local/php5/php.d/50-extension-xdebug.ini, /usr/local/php5/php.d/50-extension-xsl.ini, /usr/local/php5/php.d/99-liip-developer.ini
Select usr/local/php5/php.d/50-extension-xdebug.ini and open it with command:
sudo nano /usr/local/php5/php.d/50-extension-xdebug.ini
And make sure that you have these lines inside of that xdebug ini file:
zend_extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so [xdebug] xdebug.remote_enable=on xdebug.default_enable=on xdebug.remote_autostart=off xdebug.remote_port=9000 xdebug.remote_host=localhost xdebug.profiler_enable_trigger=1 xdebug.profiler_output_name=xdebug-profile-cachegrind.out-%H-%R xdebug.var_display_max_children = 128 xdebug.var_display_max_data = 512 xdebug.var_display_max_depth = 3 xdebug.remote_enable = 1 xdebug.idekey = PHPSTORM xdebug.show_error_trace = 1 xdebug.file_link_format = phpstorm://open?%f:%l
After that, our xdebug should be set.
Now let's go to PhpStorm and make some settings there. Go to Settings/Preferences dialog ⌘,, select Languages & Frameworks | PHP
Here the settings should look like this:
Update your Automatically detect IDE IP if needed, and press OK
Install Xdebug helper to your Chrome browser:
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc
Do not forget to enable "Start listening for debug connections"
And that is it
If you don't know how to install xdebug with PhpStorm
Now you know