phpStorm或xDebug中断连接-如何调试?
我已经为调试配置了xDebug和phpStorm。一切正常,断点被命中,但如果我尝试使用phpStorm或xDebug中断连接-如何调试?,php,phpstorm,xdebug,Php,Phpstorm,Xdebug,我已经为调试配置了xDebug和phpStorm。一切正常,断点被命中,但如果我尝试使用evaluate expression窗口计算某些表达式,调试会话将中断。我不知道它是被xDebug还是phpStorm破坏的。我如何调试它? 以下是xDebug日志中的最后一个条目: <- eval -i 27 -- JEdMT0JBTFNbJ0lERV9FVkFMX0NBQ0hFJ11bJzM1ODQ0MTQxLWRlMmMtNDRhYi05OTBkLWEyZDRkYzg3ZDM4OSddPSRkY
evaluate expression
窗口计算某些表达式,调试会话将中断。我不知道它是被xDebug还是phpStorm破坏的。我如何调试它?
以下是xDebug日志中的最后一个条目:
<- eval -i 27 -- JEdMT0JBTFNbJ0lERV9FVkFMX0NBQ0hFJ11bJzM1ODQ0MTQxLWRlMmMtNDRhYi05OTBkLWEyZDRkYzg3ZDM4OSddPSRkYXRh
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="eval" transaction_id="27"><property type="array" children="1" numchildren="2" page="0" pagesize="100"><property name="expand" type="string" size="44" encoding="base64"><![CDATA[dGFncyx0aXRsZVRyYW5zbGF0aW9uLGRlc2NyaXB0aW9uVHJhbnNsYXRpb24=]]></property><property name="fields" type="string" size="26" encoding="base64"><![CDATA[aWQsdGl0bGUsZGlmZmljdWx0eSxzdGF0dXM=]]></property></property></response>
<- context_names -i 28 -d 0
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="context_names" transaction_id="28"><context name="Locals" id="0"></context><context name="Superglobals" id="1"></context><context name="User defined constants" id="2"></context></response>
<- context_get -i 29 -d 0 -c 0
嗯,我以前对phpStorm xdebug有过一些奇妙的体验。。。当你说会话中断时,你的意思是你不再看到变量,它只是显示“已连接”或“正在等待传入连接”或类似的内容吗?是的,我不再看到调用堆栈,变量和流控件被禁用。phpStorm继续侦听传入的连接。在哪里可以找到您提到的connected
之类的状态?在变量列中可以看到“connected”或“waiting for connection”。作为使用“evaluate expression”的一种替代方法,您是否可以将函数名或变量添加到手表中,或者这样做是否也会造成问题?@Maximus如果您可以创建一个独立的示例项目来重现问题,那么我建议您向PhpStorm提交一个错误,他们将能够知道问题所在。@Maximus但接下来我需要确定这是phpStorms的问题,而不是xDebug的“为什么?你向PhpStorm开发人员和相应的开发人员提交票证,他们知道得比你好得多(例如)xdebug和PhpStorm的调试器是如何工作的,并且可以确定问题发生在何处——在PhpStorm的代码内部,或者在IDE收到xdebug的响应之前(因此出现xdebug问题)。另外,您还可以尝试升级到最新的稳定版本(您尚未提供xdebug/php版本).hmm,我以前对phpStorm xdebug有过一些奇怪的想法…当你说会话被中断时,你是说你不再看到变量,它只是显示“已连接”或“等待传入连接”之类的内容吗?是的,我不再看到调用堆栈,变量和流控件被禁用。phpStorm继续侦听传入连接。我在哪里可以找到您提到的connected
之类的状态?您会在变量列中看到“connected”或“waiting for connection”。作为使用“evaluate expression”的一种替代方法,您能否将函数名或变量添加到手表中,或者这是否也会破坏功能?@Maximus如果您可以创建独立的示例项目ct将重现问题,然后我可能建议向PhpStorm提交一个bug——他们将能够知道问题在哪里。@Maximus”,但接下来我需要确保这是phpStorms的问题,而不是xDebug的“为什么?你向PhpStorm开发人员和相应的开发人员提交了一份清单,他们知道的比你好得多(例如)xdebug和PhpStorm的调试器是如何工作的,并且可以确定问题发生在何处——在PhpStorm的代码内部,或者在IDE收到xdebug的响应之前(因此出现xdebug问题)。另外,您还可以尝试升级到最新的稳定版本(您尚未提供xdebug/php版本)。