composer在xdebug开启的情况下会有一个warning

在我们使用 Composer 的时候,经常会遇到下面的一个 warning 

说我们的性能由于  xdebug  的原因变得慢了很多,据说是或慢 3~4 倍。本来一个 warning 的话,是可以假装看不见,然后直接无视的。但是还是解决掉好一些,下面来看看具体的解决方案:

此解决方案具体在 mac php7.0 的环境上实际操作并解决了,其它环境未测试^^

第一步,找到你的 php.ini 文件,命令行执行:

php -i | grep "php.ini"

这个时候,应该就可以看到你的 php.ini 的配置文件路径,大概是这样的:

Configuration File (php.ini) Path => /usr/local/etc/php/7.0
Loaded Configuration File => /usr/local/etc/php/7.0/php.ini

如果是 php5.6 的版本,大概在 /usr/local/etc/php/5.6/php.ini ,在这个配置文件里面,

找到 php.ini 文件后,分两种情况讨论:

第一种情况: xdebug 存在 php.ini 中

如果可以在 php.ini 找到 xdebug 的配置的话(注意替换 xdebug 的真实路径):

zend_extension="/your/path/to/xdebug.so"

在找到的情况下,我们不可以简单的注释掉这一行,如果注释掉的话,我们在使用 phpunit 的时候有不能使用 xdebug 了,所以在这里,我们什么都不用修改,直接退出。

第二种情况:xdebug 存在 php.ini 中

在这种情况下,xdebug 的配置 通常在下面的目录:

/usr/local/etc/php/7.0/conf.d/ext-xdebug.ini

里面大概有这样一行:

zend_extension="/usr/local/opt/php70-xdebug/xdebug.so"

所以在这个时候,我们需要做的是:把 ext-xdebug.ini 的配置注释掉:

;zend_extension="/usr/local/opt/php70-xdebug/xdebug.so"
; 注意这个配置是在 ext-xdebug.ini 文件中的。

注释之后,再将 zend_extension="/usr/local/opt/php70-xdebug/xdebug.so" 复制到 php.ini 的配置文件底部,(其实我们就是在重现第一种情况),复制之后,就可以参照第一种情况了。

两种情况说完,下面可以统一执行

命令行执行:

cd /usr/local/etc/php/7.0 

cp php.ini php-composer.ini

得到复制的 php-composer.ini 文件之后,打开 php-composer.ini 文件,再次找到:

;zend_extension="/your/path/to/xdebug.so"
;我们在这里直接添加一个 ; 号,注释掉 xdebug

这样我们的前期工作就完成了。

然后,添加 alias,在你的 ~/.bash_profile 或者 ~/.bashrc 中的 alias 部分,添加下面这个 alias:

注意:composer的路径应该是你自己的composer路径,可以使用which composer查看

alias composer="php -c php-composer.ini /usr/local/bin/composer"

这样,我们在执行 composer 命令的时候就是使用到 php-composer.ini 这个配置文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值