use*_*157 24 php xdebug composer-php
PHP新手.处理PHP项目并启用xdebug以便能够调试我的php应用程序.生产服务器未启用xdebug,因为它由另一个团队处理.在我的本地机器上,当我运行作曲家时,它给了我一个警告说
You are running composer with xdebug enabled. This has a major impact on
runtime performance.
Run Code Online (Sandbox Code Playgroud)
我在开发时不想禁用xdebug.只是想确认在开发环境中运行xdebug应该对在生产服务器上安装应用程序的库/性能的作曲家没有影响.
Jen*_*och 27
我在开发时不想禁用xdebug.只是想确认在开发环境中运行xdebug应该对在生产服务器上安装应用程序的库/性能的作曲家没有影响.
只需加载Xdebug就会产生巨大的影响.即使没有启用性能分析功能,它也会使Composer的运行速度降低3倍或4倍.
换句话说:xdebug对于调试非常有用,但会增加使用的内存和Composer的处理时间.
如何禁用Xdebug for Composer运行?
我的建议是编写一个用于运行Composer的小调用助手.
帮助程序是一个bash或批处理脚本,使用自定义调用PHP php.ini,特别是为Composer配置.让我们称之为:php.ini-composer.
您可以php.ini通过删除xdebug或将其注释掉来复制当前并为Composer运行调整它,如下所示:;zend_extension = "/path/to/my/xdebug.so".
当你在它时:设置memory_limit=-1也是有帮助的.
完整命令在Windows上看起来如此: php.exe -c php.ini-composer composer.phar %*
只需克隆bash脚本的想法.
您可以在Composer FAQ中找到问题的完整答案.
https://getcomposer.org/doc/articles/troubleshooting.md#xdebug-impact-on-composer
它是在几个小时前添加/更新的.
现代版本的 Composer 可以解决默认情况下为 CLI SAPI 启用 XDebug 的问题。它会生成一个新的 PHP 进程,并禁用 XDebug 扩展以防被检测到。
您可以通过设置以下环境变量来禁用此行为:
COMPOSER_ALLOW_XDEBUG=1
Run Code Online (Sandbox Code Playgroud)
在文档中找到了这个:https : //getcomposer.org/doc/articles/troubleshooting.md#xdebug-impact-on-composer