我们在Eclipse里选中一个PHP文件,右键选择Debug As->PHP CLI Application。
所谓CLI应用,是指这种脚本文件不需要任何Web服务器即可运行,当然, PHP运行时还是需要的。
我们在弹出的debug窗口里看到了XDebug:
XDebug是PHP调试的利器。在我的文件夹C:MyAppwampinphpphp5.5.12里面有个php.ini配置文件,文件的末尾有这样一个配置:
; XDEBUG Extension
zend_extension = "C:/MyApp/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11.dll"
;
[xdebug]
xdebug.remote_enable = off
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "C:/MyApp/wamp/tmp"
xdebug.show_local_vars=0
这里实际上就指明了XDEBUG的位置:
那么Eclipse?
使用任务管理器查看,当我用Eclipse调试PHP CLI应用时,出现了一个PHP.exe进程:
命令提示行:
C:MyAppwampinphpphp5.5.12php.exe -n -c C:Usersi042416AppDataLocalTempphp-inisession2307282238017995350.tmpphp.ini -d asp_tags=off -d short_open_tag=on C:Usersi042416scp20180425 est ewfile.php
-n 选项:不使用全局的php.ini文件
-c 选项:使用-c后面指定的php.ini, 即C:Usersi042416AppDataLocalTempphp-inisession2307282238017995350.tmpphp.ini
-d 选项:临时指定一个php.ini里没有的参数,即asp_tags=off
再看看这个我开始CLI调试后才临时生成的php.ini文件:
虽然有70多k,但是绝大多数是分号开头的注释,只有最后几行才是有效信息:
希望本文对大家理解Eclipse里使用XDebug进行PHP CLI应用的调试原理有所帮助。
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
相关推荐
Python CLI应用程序模板 这是一个模板,用于生成Python命令行界面(CLI)应用程序。特征运行测试以方便构建CLI应用程序(分析和处理命令,参数,选项等) CI的yml文件开源许可证的不同选择用法安装要求pip install -...
上手编写跨平台CLI应用程序的模板
mow.cli - 构建CLI应用程序的通用的Go库复杂的flag和参数解析与验证
This compact, concise book shows you how to create PHP Command Line Interface (CLI) scripts, including SAPI and more. Learn to quickly create useful and effective Command Line software and scripts ...
以一个网站的基本功能演示了ics的httpcli使用方法。
cobra - 一个库来创建强大的现代CLI应用程序以及程序生成应用程序和命令文件。
命令行界面 用于创建 CLI 应用程序的小型 PHP 框架
CLI应用程序的花哨logger
Conget是一个CLI应用程序,它是一个并发文件下载程序,它通过拆分成多个块并以异步方式获取数据来下载文件数据。
vue+vuecli+webapck实现多页面应用,集成router路由及vux插件。
在CLI应用程序中订购披萨
Golang Helper用于实现漂亮的CLI应用程序
PHP CLI: Create Command Line Interface Scripts with PHP Robert Aley | Sep 2016 | PDF | ISBN: 1484222377 | 80 pages | 5 Mb This compact, concise book shows you how to create PHP Command Line Interface...
将.gitignore添加到项目的CLI应用
update-notifier - CLI应用程序更新通知
background: 该模块使您在程序的后台运行东西非常简单,无论是CLI应用还是Web应用
锐捷CLI手册 锐捷CLI手册 锐捷CLI手册 锐捷CLI手册
用于Polkadot和Substrate链的各种cli工具,包括基本节点监控、通过cli应用程序和其他命令行工具.zip
用于 CLI 应用程序的简单 PHP 框架。 CLI 有什么用? 在开发应用程序时,我们经常使用相同的模式一遍又一遍地做一些工作。 例如,在开发一个使用基于 MVC 框架的网站时,我们要创建一个 Controller 和 Model,其中 ...
clicli_v1.1.6.apk