如何在phpstorm中启用Xdebug

时间:2017-01-15 18:10:42

标签: php phpstorm xdebug

已更新

我正在尝试在PhpStorm中配置xdebug。我运行了phpinfo(),我可以看到xdebug版本,IDE密钥以及它已启用。

Loaded Configuration File : /etc/php/7.0/cli/php.ini 

但是在php.ini文件中,没有[xdebug]部分但是我在20-xdebug.ini文件夹中找到了/etc/php/7.0/cli/conf.d文件。 (我假设这是我应该编辑的配置)

它只包含一行: zend_extension=xdebug.so 没有端口号,启用/禁用。配置xdebug的下一步是什么?

2 个答案:

答案 0 :(得分:2)

通常,所有扩展的配置文件都放在名为conf.d的目录中。

另外,请查看包含的行'其他.ini文件已解析'或者'扫描此目录以获取其他.ini文件'。您可以在下面看到它如何查找我的环境(php -i输出的和平):

Configuration File (php.ini) Path => /usr/local/etc/php
Loaded Configuration File => /usr/local/etc/php/php.ini
Scan this dir for additional .ini files => /usr/local/etc/php/conf.d
Additional .ini files parsed => 
    /usr/local/etc/php/conf.d/docker-php-ext-gd.ini,
    /usr/local/etc/php/conf.d/docker-php-ext-intl.ini,
    /usr/local/etc/php/conf.d/docker-php-ext-mcrypt.ini,
    /usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini,
    /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini,
    /usr/local/etc/php/conf.d/docker-php-ext-zip.ini,

答案 1 :(得分:1)

线索1.确认您的系统上没有运行两个版本的PHP。有时,如果您使用软件包管理器安装新的PHP,而不是在操作系统附带的现有软件包上安装。

线索2.重启" brew服务重启php56"或者apache2(apachectl start / stop)

我要安装的步骤 xdebug

A。使用包管理器brew install homebrew/php/php56-xdebug

安装xdebug

B。使用php --ini检查已加载的ini文件列表

控制台输出:

Configuration File (php.ini) Path: /usr/local/etc/php/5.6
Loaded Configuration File:         /usr/local/etc/php/5.6/php.ini
Scan for additional .ini files in: /usr/local/etc/php/5.6/conf.d
Additional .ini files parsed:      /usr/local/etc/php/5.6/conf.d/ext-gmagick.ini,
/usr/local/etc/php/5.6/conf.d/ext-igbinary.ini,
/usr/local/etc/php/5.6/conf.d/ext-imagick.ini,
/usr/local/etc/php/5.6/conf.d/ext-intl.ini,
/usr/local/etc/php/5.6/conf.d/ext-ioncubeloader.ini,
/usr/local/etc/php/5.6/conf.d/ext-mailparse.ini,
/usr/local/etc/php/5.6/conf.d/ext-mcrypt.ini,
/usr/local/etc/php/5.6/conf.d/ext-mongo.ini,
/usr/local/etc/php/5.6/conf.d/ext-oauth.ini,
/usr/local/etc/php/5.6/conf.d/ext-opcache.ini,
/usr/local/etc/php/5.6/conf.d/ext-tidy.ini,
/usr/local/etc/php/5.6/conf.d/ext-uploadprogress.ini,
/usr/local/etc/php/5.6/conf.d/ext-xdebug.ini

C。 php -m | grep xdebug - 如果您安装了xdebug模块,您将看到" xdebug"在输出中。

D。验证" zend_extension ="指向xdebug.so的行。如果您使用包管理器安装,那么它应该已经存在。

E。检查xdebug的调整设置,我的是:

[Xdebug的] 的zend_extension =" /usr/local/opt/php56-xdebug/xdebug.so"

xdebug.remote_port=9089 // <-- same in IDE
xdebug.default_enable=1
xdebug.remote_connect_back=1
xdebug.remote_handler=dbgp
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_handler=dbgp
xdebug.idekey=PHPSTORM
xdebug.var_display_max_depth = -1 
xdebug.var_display_max_children = -1
xdebug.var_display_max_data = -1 
xdebug.max_nesting_level = 1000

F。在PhpStorm中将端口号设置为 9089 ,然后选择可以接受外部连接:&#34; X&#34;

希望它有所帮助。 (我使用的是mac,但对于Linux或Win来说是相同的)