Xdebug 成功连接到 DBGP 客户端,但不会在断点处停止

2023-04-09php开发问题
9

本文介绍了Xdebug 成功连接到 DBGP 客户端,但不会在断点处停止的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我安装了 Xdebug 2.1,并运行 PHP 5.2.13.它可以成功连接到多个 DBGP 客户端(即 xdebug.remote_log 显示来回通信,客户端本身也显示传入连接),但它不会在断点处停止.我试过 NetBeans、MacGDBp 以及命令行debugclient 与 Xdebug 捆绑在一起.

I have Xdebug 2.1 installed, and running with PHP 5.2.13. It can successfully connect to multiple DBGP clients (i.e. the xdebug.remote_log shows communication back and forth, and the clients themselves also show the incoming connection), but it doesn't stop at breakpoints. I have tried NetBeans, MacGDBp and also the command-line debugclient bundled with Xdebug.

一个典型的交换看起来像:

A typical exchange looks like:

Log opened at 2010-07-20 09:33:17
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///mnt/hgfs/htdocs/mycompany/index.php" language="PHP" protocol_version="1.0" appid="14371" idekey="macgdbp"><engine version="2.1.0"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2010 by Derick Rethans]]></copyright></init>

<- status -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="status" transaction_id="macgdbp" status="starting" reason="ok"></response>

<- step_into -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="step_into" transaction_id="macgdbp" status="stopping" reason="ok"></response>

<- status -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="status" transaction_id="macgdbp" status="stopping" reason="ok"></response>

Log closed at 2010-07-20 09:33:18

NetBeans 尝试设置断点,Xdebug 确认这些断点:

NetBeans attempts to set breakpoints, and these are acknowledged by Xdebug:

<- breakpoint_set -i 7 -t line -s enabled -f file:///mnt/hgfs/htdocs/mycompany/index.php -n 9
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="7" state="enabled" id="139360004"></response>

然而,Xdebug 还是不肯罢休!

However, Xdebug still refuses to stop!

推荐答案

如果您将 Xdebug 作为 extension 加载(即 extension=xdebug.so) 在 PHP 配置中而不是 zend_extension(即 zend_extension=/usr/lib/php5/20060613+lfs/xdebug.so).

This appears to happen if you have have Xdebug loaded as an extension (i.e. extension=xdebug.so) in the PHP config instead of a zend_extension (i.e. zend_extension=/usr/lib/php5/20060613+lfs/xdebug.so).

确保您的 PHP 配置中没有 extension=xdebug.so任何地方,即使您是非常确定您正在使用 zend_extension.例如,如果您在 /etc/php5/conf.d/xdebug.ini 中有 zend_extension,这很可能会被 extension 取代在 /etc/php5/apache2/php.ini 中.如果是这种情况,什么都不会抱怨,phpinfo() 会尽职尽责地报告 Xdebug 已加载!(Xdebug 2.1 在作为扩展加载时确实会在 phpinfo() 中发出一个小警告,但以前的版本什么也不做.)

Make sure that you don't have an extension=xdebug.so line anywhere in your PHP config, even if you're pretty sure you're using zend_extension. For example, if you have zend_extension in /etc/php5/conf.d/xdebug.ini, this may well be superseded by an extension in /etc/php5/apache2/php.ini. If this is the case, nothing will complain, and phpinfo() will dutifully report that Xdebug is loaded! (Xdebug 2.1 does issue a small warning in phpinfo() when loaded as an extension, but previous versions do nothing.)

这篇关于Xdebug 成功连接到 DBGP 客户端,但不会在断点处停止的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17