微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php xdebug读不到怎么办

PHP xdebug读不到的解决办法:1、查看PHP的版本;2、使用“PHP -m”检查xdebug是否安装;3、配置xebug的调试语句即可。

本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑

PHP xdebug读不到怎么办?

解决windows上PHP xdebug 无法调试的问题

有时候我们在使用PHPNginx进行开发的时候,会出现这样的情况,明明扩展已经安装,但是就是无法调试成功。这个时候我们就要耐心去分析问题产生的原因。

第一步:查看PHP的版本比如是否是x64还是x86,看看xdebug是否激活,可以通过PHPinfo();来查看扩展是否激活。

第二步:使用PHP -m再次检查xdebug是否安装。

这个时候可能会遇到 xdebug must be loaded as zend extension 。这个是因为我们在PHP.ini中配置extension的时候需要改成zend_extension才行,也就zend_extension=PHP_xdebug.dll。

第三步:我们需要配置xebug的调试语句,也就是需要在PHP.ini中填入下面的语句

 [XDebug]
 xdebug.remote_enable = 1
 xdebug.remote_autostart = 1
 xdebug.remote_port=9090
 xdebug.remote_host=127.0.0.1

这里有个非常重要的一个参数就是remote_port=9090,认的话会是9000,但是如果填写9000这个端口,可能就会导致你的PHP无法调试,因为9000端口会被Nginx占用做代理。

如何查看9000端口是否被占用,可以在命令行输入netstat -anp|findstr 9000这个命令,如果有程序占用9000端口,就会显示出来,我们可以查看到他的pid,接下来我们通过tasklist|findstr 2342(2343是刚才查到的pid)来找到是哪个进程占用的这个端口,如果可以关闭的话,就关闭,不能关闭的话,我们就需要修改我们的端口号,比如笔者这里修改为9090.

总结:编程就是一个不断遇到问题,不断解决问题的过程,可能同样的代码,不同的环境就会导致结果不同,同样的环境,不同的参数也会导致运行不同,我们需要做的就是不断加深我们的理解,学会查看错误日志,学会分析程序运行逻辑,这样才能克服重重困难,勇攀高峰。

这里比如调试的问题,我们首先就需要明白调试的原理是什么,它本质上是另起一个进程去监听我们的调试,它首先是PHP一个扩展,PHP的好多功能都是通过扩展来实现的,比如常用的许多图形库,加密算法等。当激活扩展后,PHP就会和扩展交互,这里的xdebug就是通过获取到的PHP运行信息来进行调试的。

推荐学习:《PHP教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐