>我想能够调试我的symfony2项目.我想成为
能够在我的代码中设置一个断点,运行远程调试并且可以
当我进行互动时,能够跨越代码中的所有断点
与我的申请.
背景信息和当前设置:
>我使用的IDE是PHPstorm.
> Apache和MysqL服务器正在我的vmware播放器上运行.
> Xdebug安装在vmware播放器上.
>我目前通过我的vmware播放器ip连接到我的项目
(即172.16.48.1/app_dev.PHP).在这一点上,我与我的互动
应用程序正常开发.
我到目前为止做了什么
我跟着the tutorial,但没有任何运气.
>我真的很困惑,大部分的教程,但尽可能最好地遵循.按照说明书,我认为书签不正确.
>我也看过一个网络研讨会或两个远程调试,但仍然不清楚我需要做些什么来完成我的代码.
题:
有人可以提供我需要做的一步一步教程
设置远程调试,以便我可以启动一些远程调试
通过PHPstorm会打开我的Web应用程序和我
浏览我的网络应用程序我的断点将被击中?
1)在服务器上的PHP.ini中配置xdebug并重新启动Web服务器(或PHP-fpm):
[xdebug] zend_extension="**location to xdebug**/xdebug.so" xdebug.remote_enable = 1 ; use port 9009 because PHP-fpm uses 9000 by default xdebug.remote_port = 9009 xdebug.idekey = PHPSTORM
2)安装xdebug扩展名
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc
3)设置xdebug exteions.在chrome:// extensions中找到Xdebug帮助器并单击选项.选择IDE键到PHPStorm. (这将基本上将xdebug.idekey设置为该特定会话的PHPSTORM)
4)现在是最棘手的部分,从PHPStorm连接.
您必须设置PHP远程调试调试配置.
>在工具栏中,在调试按钮旁边,您有第一个选项编辑配置的下拉字段.它会打开运行/调试配置.
>点击按钮并添加PHP远程调试.
>指定您的姓名,服务器和Ide键= PHPSTORM.
>单击应用并确定(我永远不会知道哪一个,所以我总是单击两个,以防万一)
>现在,工具栏中的下拉菜单将显示您新设置的远程服务器,运行按钮(绿色箭头)将被禁用.
>单击开始监听PHP调试连接
点击那个绿色的bug图标开始调试
>调试视图将打开2个选项卡:调试器和控制台(默认选择)
>将选项卡更改为Debugger,您将看到:“等待与ide键’PHPSTORM’的传入连接”
>打开浏览器
>导航到您的服务器URL
激活Xdebug辅助扩展(点击URL栏中的灰色错误),它将变为绿色
检查一切是否正常,打开Chrome控制台,选项卡资源 – >饼干 – >你的服务器并验证是否创建了值为PHPSTORM的cookie XDEBUG_SESSION(这是实际激活了xdebug远程调试的PHP)
>现在刷新页面,并快速将其替换为PHPStorm(或安排您的窗口,以便您可以在刷新浏览器时看到PHPStorm)
>在您的Debug视图和Debugger控制台中,您将简要地看到“已连接”
TADA!
在控制器中创建几个断点(不要使用AppKernel.PHP或其他symfony2特定文件,因为那些被编译并且不被调用,即使在开发模式下)
增加5.1.2015
官方教程可以在这里找到:
https://confluence.jetbrains.com/display/PhpStorm/Profiling+PHP+applications+with+PhpStorm+and+Xdebug