运行环境:
phpStorm 2017.2
PHP 7.1.5
Xdebug 2.6.1
php.ini添加xdebug模块
你需要仔细分析和选择要下载的对应版本,否则无法调试。由于非常容易出错,建议采用下面这种简单方法【注意:如果php版本与xdebug版本不匹配,虽然xdebug能安装成功,但会出现phpstorm配置xdebug只有第一行断点能触发的问题,如出现这个问题请重新更换xdebug版本】:
首先获取phpinfo()函数的信息,如下图
ctrl+A全选这个页面的信息,然后粘贴到第一个图片的页面中。
不知道这个页面如何出现的同学在你的php服务器程序目录下 创建一个phpinfo.php文件,只需一行代码
<?php phpinfo(); ?>
浏览器中输入 http://127.0.0.1/phpinfo.php 就出现上图的页面了。
然后,xdebug网站提供一个自动分析你系统对应的xdebug版本的页面,网址是 https://xdebug.org/wizard.php,打开把复制的内容输入到网址的编辑框中,如下图
把下载的dll文件放到php的ext扩展目录里面,最后在php.ini上添加以下配置:
xdebug.idekey = PHPSTORM xdebug.auto_trace=1 xdebug.collect_params = 1 xdebug.collect_return = 1 xdebug.auto_trace = 1 xdebug.remote_enable = 1 xdebug.remote_host = localhost xdebug.remote_port = 9070 xdebug.remote_handler = dbgp
重启apache 或者nginx检测xdebug是否安装成功。【特别提示:不管是Windows还是Linux安装xdebug都需要以zend扩展的形式安装,如果提示XDEBUG NOT LOADED AS ZEND EXTENSION即下图所示界面则没有正确安装,需要重新修改配置文件。】
phpstorm配置xdebug支持
打开phpStorm,快捷键Clt+Alt+S打开settings,配置debug
打开phpStorm,快捷键Clt+Alt+S打开settings,配置services
打开phpStorm,快捷键Clt+Alt+S打开settings,配置dbgp
打开phpStorm,添加调试配置
打开phpStorm,断点运行查看效果。
附带本例子调试的php代码
//封装方法,取余 function kmod($x, $y) { //fmod() 函数返回除法的浮点数余数 return intval(fmod(floatval($x), $y)); } //数字标识 $mark_num = 1111; //总数 $count = 15; echo rand(111,222222); $remainder_arr = []; if(is_numeric($mark_num)){ $y = $count/2; $init_num = 1; $step = 1; $auto_num = 1; while ($init_num <= 5) { if($step%2== 1){ $remainder = kmod($mark_num-$step,$y); }else{ $remainder = kmod($mark_num+$step,$y); } if(!in_array($remainder,$remainder_arr)){ $remainder_arr[] = $remainder; $init_num++; } if($auto_num >=100000){ //防止死循环 break; } $auto_num++; $step++; } } print_r($remainder_arr); echo 1;