windows php 调试,Windows PHPstorm xdebug 断点调试

前几天在站内看到有人写了篇 断点调试文章,于是我也动手学习下。

1.安装扩展xdebug

我用的是phpstudy环境,php版本为 php-7.1.13-nts,选择下载的xdebug为 https://xdebug.org/files/php_xdebug-2.7.0a...

添加到php.ini

[XDebug]

xdebug.profiler_output_dir="D:\php_study\PHPTutorial\tmp\xdebug"

xdebug.trace_output_dir="D:\php_study\PHPTutorial\tmp\xdebug"

zend_extension="D:\php_study\PHPTutorial\php\php-7.1.13-nts\ext\php_xdebug.dll"

xdebug.remote_enable = on

xdebug.auto_trace = On

xdebug.remote_handler = dbgp

xdebug.remote_host = localhost

xdebug.remote_port = 9001

xdebug.idekey = PHPSTORM

xdebug.profiler_enable = off

xdebug.profiler_enable_trigger = Off

xdebug.profiler_output_name = cachegrind.out.%t.%p

xdebug.show_local_vars=0

2.配置phpstorm

file->setting-> 设置PHP执行路径

f8bc30fbe39efd9ac7c3d24d8a95c609.png

设置debug 注意port为9001

7b03a101ab41ab8cc0e8f08391f1265d.png

添加servers

5f5609b3892eab64ce06820d0d59e7fc.png

设置proxy

7b7679ad892a3c735c31273e14a53607.png

run->edit

d18805eed0d318bd2b1057714ac7f836.png

添加php web page

c019d8855a8993e65d405f89a52fd81e.png

e4661a304d2a2dbbe962b67c6ea70fc4.png

设置打点位置,开始监听

16453bb692f7ad0a3b2ed84ff3c8ce69.png

start

871a8c6bb08b0202993676b5f21101b1.png

debug会打开浏览器 比如 http://localhost/phpinfo.php?XDEBUG_SESSIO... 每次打开url参数会变

3ce6f1b08d5f87402ed3c61893ef24f7.png

结束监听,否则页面一直停留

ca1ae7d0ab30bb556ed0aec4168fe13d.png

以斐波那契数列为例子,看看循环调用了多少次!

//递归法

function fib_recursive($n){

if($n==0||$n==1){return 1;}

else{

return fib_recursive($n-1)+fib_recursive($n-2);

}

}

echo fib_recursive(10);

对比下

//数组法

function fib_recursive($num){

$arr=[];

for($i=0;$i<=$num;$i++)

{

if($i==0 || $i==1){

$arr[$i]=1;

}else{

$arr[$i]=$arr[$i-1]+$arr[$i-2];

}

}

return $arr[$num];

}

print_r(fib_recursive(10));

3.问题

如果出现Can't start listening for connections from 'xdebug': Port 9000 is busy

可修改端口号,要修改两个地方

第一个地方是刚才php.ini里面的xdebug.remote_port=9001

第二个地方是phpstorm - setting - Languages&Frameworks -PHP - debug - 修改里面的Debug port

4.感谢:

https://www.cnblogs.com/baocheng/p/5775938...

https://www.cnblogs.com/niuxiaoling/p/8027...

分享:Vagrant phpstorm xdebug

博客:phpstrom xdebug 断点调试教程

https://xiaoxingping.top/book/show/1?id=13

使用phpstorm对docker中的脚本进行debug

本作品采用《CC 协议》,转载必须注明作者和本文链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值