Documentation for macOS
#Using Xdebug with Herd
Herd includes support for Xdebug, a popular and powerful debugger for PHP. The free version of Herd ships with Xdebug's PHP extensions out-of-the-box, but you need to manually enable the extension when you need it.
If Xdebug is too much for you and you prefer debugging via dumps, check out the Dumps of Herd Pro.
[!NOTE]
Looking for an even easier way to debug your applications? Check out Herd Pro's Xdebug integration. It can automatically detect breakpoints in your application and enable Xdebug on-the-fly when necessary.
#Enabling Xdebug manually
In order to activate Xdebug, you need to add the appropriate PHP extension to your php.ini
file. The extensions are located in the Herd application bundle, which you can find in your Applications folder.
The exact location depends on your PHP version and device architecture.
The following extensions are available:
# Apple Silicon/Applications/Herd.app/Contents/Resources/xdebug/xdebug-74-arm64.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-80-arm64.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-81-arm64.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-82-arm64.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-83-arm64.so # Intel/Applications/Herd.app/Contents/Resources/xdebug/xdebug-74-x86.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-80-x86.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-81-x86.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-82-x86.so/Applications/Herd.app/Contents/Resources/xdebug/xdebug-83-x86.so
After you have located the correct version of Xdebug, you need to append the necessary configuration to your php.ini
file. For example, the setup for PHP 8.3 on an Apple Silicon Mac looks like this:
zend_extension=/Applications/Herd.app/Contents/Resources/xdebug/xdebug-83-arm64.soxdebug.mode=debug,developxdebug.start_with_request=yesxdebug.start_upon_error=yes
After saving the changes to your php.ini
file, you need to restart Herd's services from the menu bar icon, or by running the following command in your terminal:
herd restart
For more information about the available Xdebug settings, please refer to the official Xdebug documentation.