PhpStorm2020 + phpstudyV8 +XDebug的教程详解


Posted in PHP onSeptember 17, 2020

WNMP(Windows+Nginx+Mysql+Php)环境安装操作:

1、安装phpStudy

1.1、下载phpStudy

下载地址:www.xp.cn/
解压后运行exe进行安装,我的安装目录是:D:\phpstudy_pro

1.2、配置环境:

在桌面启动小皮进行配置,我的配置如下:

首页面板:启动"WNMP"

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

网站面板:PHP版本

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

环境面板:数据库、PHP运行环境

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

2、安装PhpStorm2020

2.1、下载phpStudy

下载地址:https://blog.jetbrains.com/phpstorm/2020/03/phpstorm-2020-1-beta/

我使用的是缺省目录进行安装,如何激活在这就不详细说了。

2.1、配置PHP版本信息

我们点击“File->Settings”菜单进行PHP版本配置,使用和phpstudy对应的版本PHP7.3.4。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

注意:Interpreter默认是没有的,我们需要点击右边的按钮进行配置。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解
PhpStorm2020 + phpstudyV8 +XDebug的教程详解

3、新建测试工程

 3.1、使用PhpStorm新建工程"HelloPHP"

第一步:打开PhpStorm软件,点击创建新项目,在输入框填写带项目存放地址的项目名称,完成后点击创建。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解 

3.2、配置工程的本地服务

我们点击“工具/部署/配置”菜单进行本地服务配置

PhpStorm2020 + phpstudyV8 +XDebug的教程详解
PhpStorm2020 + phpstudyV8 +XDebug的教程详解

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

点击确定后进行具体配置:
Connection面板:配置部署目录

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

Mappings面板:配置相对目录和访问地址

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

配置完之后点击“确定”。

3.3、配置运行环境

我们点击“运行/编辑配置”菜单进行运行环境配置

PhpStorm2020 + phpstudyV8 +XDebug的教程详解
PhpStorm2020 + phpstudyV8 +XDebug的教程详解
PhpStorm2020 + phpstudyV8 +XDebug的教程详解

3.4、创建PHP文件

选择工程,单击右键->New->PHP File

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

输入文件的名称,点击确定增加PHP文件

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

在新建的文件里输入代码:

<?php
echo "Hello PHP!"; // 在页面上输出“Hello PHP!”
phpinfo();     // 调用PHP内置的函数显示PHP的基本信息

3.5、部署工程

在菜单中选择Tools->Deployment->Upload to localhost上传工程。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

上传成功后,下方控制台显示上传的具体信息:

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

我们在phpstudy的www/HelloPHP目录下可以找到刚才上传的Index.php文件

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

3.6、运行Hello PHP

点击页面中悬浮的浏览器运行页面

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

我们来看看效果:

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

到这,我们完成了PHPStudy+PHPStorm配置和HelloPHP的运行,但是到目前为止PHPStorm只是承担了编辑器和部署的功能,没法直接调试,下面我们就来完成在PHPStorm进行单步调试。

4、调试Hello PHP

4.1、浏览器和插件

1)浏览器我们使用chrome,下载地址:https://www.google.com/chrome/;
2)配合chrome的插件我们使用xdebug,安装完成在浏览器地址栏的右侧能够看到一只小爬虫,点击后如下图所示:

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

我们选择Debug,就会通知我们的开发环境进行调试,选择disable,就会直接运行。
我们可以在xdebug helper中配置它,选择phpstorm并且在右边的框中填入phpstorm-xdebug。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解
PhpStorm2020 + phpstudyV8 +XDebug的教程详解

到这里,我们可以phpstorm中设置断点,然后使用浏览器的xdebug helper开启页面调试。

4.2、在php.ini文件的末尾添加如下配置:

[Xdebug]
zend_extension=D:/phpstudy_pro/Extensions/php/php7.3.4nts/ext/php_xdebug.dll
xdebug.collect_params=1
xdebug.collect_return=1
xdebug.auto_trace=On
xdebug.trace_output_dir=D:/phpstudy_pro/Extensions/php_log/php7.3.4nts.xdebug.trace	;设置的函数调用监测信息的输出路径
;xdebug.profiler_enable=On	;效能监测的设置开关
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir="D:\phpstudy_pro\Extensions\tmp\xdebug"	;profiler_enable设置为1的时候,效能监测信息写入文件所在的目录
xdebug.remote_host = "localhost"
xdebug.remote_port=9090
xdebug.remote_handler="dbgp"
xdebug.profiler_append = 0
xdebug.remote_enable=On
xdebug.idekey=phpstorm-xdebug
xdebug.profiler_output_name ="cache.out.%t-%s"	;生成的效能监测文件的名字

4.3、在PhpStorm配置Debug:

1)选择File->Settings->Languages&Frameworks->PHP>Debug,找到XDebug选项卡,Debug port 输入的是刚刚php.ini配置文件当中xdebug.remote_port的值,具体配置如下图:

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

2)选择File->Settings->Languages&Frameworks->PHP->Debug->DBGp Proxy,
IED key输入刚刚php.ini文件中xdebug.idekey的值,Host、Port是File->Settings->Languages&Frameworks->PHP->Servers中设定的Host、Port值,具体配置如下图:

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

4.4、开启XDebug调试

在phpStorm里打开监听,就是一个电话一样的按钮,点击变为绿色,在程序代码点前点击,设置程序段点,点击绿色的debug爬虫按钮,chrome浏览器打开xdebug页,phpStorm出现debug窗口,并获取到variables值

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

5、错误处理

5.1 PHP Warning: Xdebug MUST be loaded as a Zend extension in Unknown on line 0

原因1:
remote_port我们使用的是9090,默认使用的是9000。由于9000端口会被nginx占用做代理,如果被占用,就会导致php无法调试。
原因2:
phpStudy集成XDebug扩展,我们在PHP扩展中选择php_xdebug时会出现上述错误,个人分析:可能是因为php.ini中配置的zend_extension和选项有冲突。

PhpStorm2020 + phpstudyV8 +XDebug的教程详解

到此这篇关于PhpStorm2020 + phpstudyV8 +XDebug的教程详解的文章就介绍到这了,更多相关PhpStorm2020 phpstudyV8 XDebug内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP基础教程(php入门基础教程)一些code代码
Jan 06 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
Jun 17 PHP
PHP 解决session死锁的方法
Jun 20 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
Aug 20 PHP
php常用hash加密函数
Nov 22 PHP
php获取指定日期之间的各个周和月的起止时间
Nov 24 PHP
php+html5+ajax实现上传图片的方法
May 14 PHP
thinkphp表单上传文件并将文件路径保存到数据库中
Jul 28 PHP
php从身份证获取性别和出生年月
Feb 09 PHP
php微信公众号开发之秒杀
Oct 20 PHP
PHP+RabbitMQ实现消息队列的完整代码
Mar 20 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 PHP
phpstorm激活码2020附使用详细教程
Sep 25 #PHP
phpStorm2020 注册码
Sep 17 #PHP
PHPstorm激活码2020年5月13日亲测有效
Sep 17 #PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
Sep 25 #PHP
详解phpstorm2020最新破解方法
Sep 17 #PHP
goto语法在PHP中的使用教程
Sep 17 #PHP
详解使用php-cs-fixer格式化代码
Sep 16 #PHP
You might like
js下函数般调用正则的方法附代码
2008/06/22 PHP
PHP容易被忽略而出错陷阱 数字与字符串比较
2011/11/10 PHP
php实现水仙花数示例分享
2014/04/03 PHP
PHP Static延迟静态绑定用法分析
2016/03/16 PHP
PHP处理CSV表格文件的常用操作方法总结
2016/07/01 PHP
php each 返回数组中当前的键值对并将数组指针向前移动一步实例
2016/11/22 PHP
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
js客户端快捷键管理类的较完整实现和应用
2010/06/08 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
css transform 3D幻灯片特效实现步骤解读
2013/03/27 Javascript
如何正确使用javascript 来进行我们的程序开发
2014/06/23 Javascript
基于jQuery实现火焰灯效果导航菜单
2017/01/04 Javascript
在 Angular 中使用Chart.js 和 ng2-charts的示例代码
2017/08/17 Javascript
vue-router路由与页面间导航实例解析
2017/11/07 Javascript
关于axios不能使用Vue.use()浅析
2018/01/12 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
使用vux实现上拉刷新功能遇到的坑
2018/02/08 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
使用vue-cli(vue脚手架)快速搭建项目的方法
2018/05/21 Javascript
JS实现放大镜效果
2020/09/21 Javascript
[04:42]2015国际邀请赛CDEC战队晋级之路
2015/08/13 DOTA
Python写入数据到MP3文件中的方法
2015/07/10 Python
如何在Python中编写并发程序
2016/02/27 Python
python实现斐波那契数列的方法示例
2017/01/12 Python
python和c语言的主要区别总结
2019/07/07 Python
Python中关于浮点数的冷知识
2019/09/22 Python
python获取引用对象的个数方式
2019/12/20 Python
Python实现简单的2048小游戏
2021/03/01 Python
一个SQL面试题
2014/08/21 面试题
在c#中using和new这两个关键字有什么意义
2013/05/19 面试题
yy结婚证婚词
2014/01/10 职场文书
承认错误的检讨书
2014/01/30 职场文书
教师网络培训感言
2014/03/09 职场文书
无故旷工检讨书
2015/08/15 职场文书
css3实现背景图片颜色修改的多种方式
2021/04/13 HTML / CSS
Redis延迟队列和分布式延迟队列的简答实现
2021/05/13 Redis