标签: xdebug

使用XDebug跟踪PHP Web服务页面

我正在使用Eclipse和XDebug开发一个依赖于Web服务的PHP应用程序.我有两种方式使用我的服务的测试页面:AJAX(使用jQuery)和cURL.

我将断点添加到服务页面并启动调试器.当我从AJAX调用服务时,执行在断点处很好地停止,我得到了我的变量,逐步控制等.

但是当我使用cURL调用服务时(即在PHP页面内),断点无法正常工作.即使我打开"Break at first line"调试器选项,我也无法在使用cURL时停止执行.

它是调试器行为吗?我是否需要在cURL电话中添加听筒?改变URL?或者它是XDebug限制?

谢谢你的时间和精力,盖伊

php eclipse debugging curl xdebug

7
推荐指数
3
解决办法
1万
查看次数

How to install XDebug with Eclipse PDT and XAMPP

Can someone please tell me How can I install XDebug and integrate it with my existing XAMPP and Eclipse PDT. Thanks.

eclipse xampp xdebug

7
推荐指数
1
解决办法
7555
查看次数

使用MAMP在Mac OSX上构建/安装XDebug

我在使用MAMP在Mac OSX上构建/安装XDebug时遇到问题.

到目前为止,我在网上进行了广泛的搜索,目前我被困在XDebug"安装向导"的一部分,它告诉我在我下载的源代码上"运行:phpize".

当我运行时,phpize我收到以下消息:

new-host-2:xdebug-2.2.0 Dima$ phpize
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:        
Zend Module Api No:     
Zend Extension Api No:  
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
Run Code Online (Sandbox Code Playgroud)

如果我做了which phpize我得到:

new-host-2:xdebug-2.2.0 Dima$ which phpize
/usr/bin/phpize
Run Code Online (Sandbox Code Playgroud)

这不是我想要使用的版本,我想使用phpize我假设的MAMP安装版本,因为我想在MAMP版本的PHP上安装XDebug.这很令人费解,因为我已将MAMP特定的PHP bin路径添加到我的.bash_profile中$PATH.

如果我跑echo $PATH我得到:

new-host-2:xdebug-2.2.0 …
Run Code Online (Sandbox Code Playgroud)

php mamp xdebug osx-lion

7
推荐指数
2
解决办法
1万
查看次数

如何使用Eclipse和XAMPP在Ubuntu 12.04上设置PHP调试?

我一直试图配置这个已经很长一段时间但我无法让它正常运行.到目前为止:

  • 下载最新版本的xampp并将其移至 /opt/lampp
  • 用apt-get安装php5-xdebug
  • 将implicit_flush更改为Onin/opt/lampp/etc/php.ini
  • 在ini文件的末尾添加了以下行:

    [xdebug]
    zend_extension="/usr/lib/php5/20090626/xdebug.so"
    xdebug.remote_enable=1
    xdebug.remote_handler="dbgp"
    xdebug.remote_port=9000
    xdebug.remote_host="localhost"
    
    Run Code Online (Sandbox Code Playgroud)

我已经确保重新启动apache,但是在显示时我仍然没有得到xdebug-section phpinfo();

我认为Eclipse配置正确,但在我让xdebug运行之前我无法确定.

请帮忙,非常欢迎所有建议!

编辑:

以下是输出phpinfo():http://www.pasteall.org/35930

更新:

我已经下载了Xampp 1.8.1(之前有xampp 1.8.0)/opt/lampp并添加了相应的开发文件.我根据http://xdebug.org/wizard.php上的指南自己编译了Xdebug 并安装了xdebug /opt/lampp/bin/pecl.

现在我的php.ini看起来像这样:

zend_extension = "/opt/lampp/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_port = 9000
xdebug.remote_host = "localhost"
xdebug.remote_handler = "dbgp"
Run Code Online (Sandbox Code Playgroud)

我不知道该怎么做,http://xdebug.org/wizard.php仍然报告没有安装Xdebug.这可能是一个许可问题吗?目前,扩展的权限如下:

-rwxr-xr-x 1 niklas niklas  88376 Sep 30 10:43 interbase.so
-rwxr-xr-x 1 niklas niklas 184920 Sep 30 10:43 oci8.so
-rwxr-xr-x 1 niklas niklas 118592 Sep …
Run Code Online (Sandbox Code Playgroud)

php eclipse debugging ubuntu xdebug

7
推荐指数
1
解决办法
9120
查看次数

为什么Xdebug日志为空?

我正在尝试设置xdebug,以便可以从本地笔记本电脑上运行的PHP Storm调试远程服务器上的php代码。

它不起作用,但是我认为开始解决问题的一个好地方是查看xdebug日志。

遗憾的是,xdebug日志文件仍然为空。

我正在尝试通过运行第一行为phpinfo()的.php文件来测试xdebug

运行文件的结果为我提供了与xdebug相关的以下行:

xdebug support => enabled
xdebug.auto_trace => Off => Off
xdebug.cli_color => 0 => 0
xdebug.collect_assignments => Off => Off
xdebug.collect_includes => On => On
xdebug.collect_params => 0 => 0
xdebug.collect_return => Off => Off
xdebug.collect_vars => Off => Off
xdebug.coverage_enable => On => On
xdebug.default_enable => On => On
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value …
Run Code Online (Sandbox Code Playgroud)

php xdebug phpstorm

7
推荐指数
1
解决办法
5016
查看次数

Xdebug - 命令不可用

我在PhpStorm远程调试我的项目.IDE显示"已连接"片刻并立即进入"等待传入连接..."

以下是此会话的Xdebug日志

I: Connecting to configured address/port: X.x.x.x:9000.
I: Connected to client. :-)
> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///xxx/info.php" language="PHP" protocol_version="1.0" appid="4365" idekey="10594"><engine version="2.2.2"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATAhttp://xdebug.org]></url><copyright><![CDATA[Copyright (c) 2002-2013 by Derick Rethans]]></copyright></init>

<- feature_set -i 0 -n show_hidden -v 1
> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="0" feature="show_hidden" success="1"></response>

<- feature_set -i 1 -n max_depth -v 1
> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="1" feature="max_depth" success="1"></response>

<- feature_set -i 2 -n max_children -v 100
> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="2" feature="max_children" success="1"></response>

<- status -i …
Run Code Online (Sandbox Code Playgroud)

xdebug phpstorm

7
推荐指数
2
解决办法
6505
查看次数

在eclipse中使用XDebug远程调试时,PHP源文件是否需要在本地和远程存在?

我对使用Eclipse的XDebug远程调试感到困惑.

我使用Windows(使用eclipse和所有爵士乐)来进行开发,但我想在与生产环境相同的环境中测试我的代码.

我一直在修补XDebug远程调试以支持这一点.我已在远程计算机上正确配置了XDebug,并确保端口已打开.但令我感到困惑的是 - 我的机器上的源文件是否也需要存在于运行PHP和XDebug的远程服务器上?现在我在我的本地开发机器上没有任何PHP可执行文件,因此没有可能在其上运行脚本的方法.

谢谢

php eclipse debian xdebug apache2

7
推荐指数
1
解决办法
658
查看次数

PHPStorm,Xdebug和远程调试(在phpstorm中使用FTP)

首先要做的事情:

  • Server是在SunVirtualBox x86上的Ubuntu上运行的Apache
  • Debugging-Server是XDebug
  • 使用phpstorm从FTP下载文件

PHP版本是

PHP 5.4.9-4ubuntu2.4 (cli) (built: Dec 12 2013 04:26:30) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.2.1, Copyright (c) 2002-2012, by Derick Rethans
Run Code Online (Sandbox Code Playgroud)

重要:XDebug已正确配置,因为一切都可以在我的localhost上运行.

在此输入图像描述

但我只是无法设置远程调试这里是我所做的所有图像和步骤,请帮助并建议我.

步骤1 - 基本单击从现有文件创建新项目.

步骤1

第2步 - 选择FTP

第2步

第3步 - 文件系统上的项目设置

第3步

步骤4 - 设置FTP连接和高级 - 被动模式

设置FTP连接和高级 - 被动模式

步骤5 - 运行/调试配置,选择PHP远程调试,然后键入Ide键:PHPSTORM

运行/调试配置

步骤6 - 服务器和验证远程环境,这里弹出警告:没有加载调试扩展

服务器并验证远程环境

第7步 - Php ini配置.

Php ini配置.

所以最后....

1)我的客户端是否需要在远程服务器上执行此操作才能使用此功能?也许在那里也安装XDEBUG,也许你会发现这个问题很傻,相信我已经在这里失去了3天而且我很沮丧地说出租约.所以请帮忙.

2)我很乐意上传更多截图或回答您可能遇到的任何问题,以帮助我.我知道这很简单,但是我对它不屑一顾.

请再次请帮助,我在PHPSTROM中通过了15页远程调试,所有这些都不够精确.就像你在第一张照片中看到的一样,我的本地主机上的一切正常.

php ftp remote-debugging xdebug phpstorm

7
推荐指数
1
解决办法
8027
查看次数

NetBeans + XDebug断点无法正常工作

我知道关于这个问题有无数的问题,但无论我尝试过什么,我都没有运气.我遇到的问题是关于使用NetBeans和XDebug时的断点(在Windows 8.1上,如果这会影响任何事情).

问题是没有断点正常工作.默认情况下,在使用NetBeans进行调试时,它会在第一行停止,并且会成功执行此操作.因此,NetBeans以某种方式连接到XDebug.但是,任何其他文件中的任何其他断点都不起作用.

我已经在php.ini文件中尝试了各种不同的设置但到目前为止没有运气.我也试过打开XDebug日志文件,这样我也许可以分析一下发生了什么,但这也行不通.最后我尝试设置断点xdebug_break(),但也没用.

php.ini中的XDebug设置

;[XDebug]
; Only Zend OR (!) XDebug
zend_extension="C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:\xampp\tmp"
Run Code Online (Sandbox Code Playgroud)

NetBeans上的项目运行配置

项目运行配置

高级配置

我已经看过以下内容:

另请注意,这是在3天前工作,但今天没有断点正常工作.

附加信息

我在cmd中运行以下命令,php -v并显示以下警告:

Warning: Module 'xdebug' already loaded in Unknown on line 0

这是否意味着xdebug试图加载两次?如果是这样,我不确定如何解决这个问题

php debugging netbeans xdebug

7
推荐指数
1
解决办法
2057
查看次数

在Mac上使用XAMPP安装XDebug for PHP

我有一台带有全新OSX Mojave安装的Mac.我下载了XAMPP(7.3)并安装了.本地Apache Web服务器工作,我从仪表板获得的PHPInfo()显示php.ini文件的所有正确信息是/Applications/XAMPP/xamppfiles/etc/php.ini.

我已经获取了PHPInfo的副本并将其放在向导中:

https://xdebug.org/wizard.php

说明看起来很简单.我必须先使用自制软件来安装autoconf.

但后来我能够在/ Applications/XAMPP/xamppfiles /文件夹中下载并解压缩xdebug-2.6.1.tgz.

我将$ PATH变量更改为/ Applications/XAMPP/xamppfiles/bin是搜索到的第一个路径,以便运行正确的phpize.

我改为/Applications/XAMPP/xamppfiles/xdebug-2.6.1文件夹并运行phpize,然后运行./configure.一切似乎运行良好,没有出现错误.

但是当我运行"make"命令时,我遇到了错误.这是我得到的输出:

> Terrys-MacBook-Pro:xdebug-2.6.1 terry$ make /bin/sh
> /Applications/XAMPP/xamppfiles/xdebug-2.6.1/libtool --mode=compile cc 
> -I. -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1 -DPHP_ATOM_INC -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1/include -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1/main -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1 -I/Applications/XAMPP/xamppfiles/include/php -I/Applications/XAMPP/xamppfiles/include/php/main -I/Applications/XAMPP/xamppfiles/include/php/TSRM -I/Applications/XAMPP/xamppfiles/include/php/Zend -I/Applications/XAMPP/xamppfiles/include/php/ext -I/Applications/XAMPP/xamppfiles/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /Applications/XAMPP/xamppfiles/xdebug-2.6.1/xdebug_compat.c -o
> xdebug_compat.lo   cc -I.
> -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1 -DPHP_ATOM_INC -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1/include -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1/main -I/Applications/XAMPP/xamppfiles/xdebug-2.6.1 -I/Applications/XAMPP/xamppfiles/include/php -I/Applications/XAMPP/xamppfiles/include/php/main -I/Applications/XAMPP/xamppfiles/include/php/TSRM -I/Applications/XAMPP/xamppfiles/include/php/Zend -I/Applications/XAMPP/xamppfiles/include/php/ext -I/Applications/XAMPP/xamppfiles/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /Applications/XAMPP/xamppfiles/xdebug-2.6.1/xdebug_compat.c 
> -fno-common -DPIC -o .libs/xdebug_compat.o /Applications/XAMPP/xamppfiles/xdebug-2.6.1/xdebug_compat.c:56:71:
**> error: too few arguments to function call, expected 6, have …
Run Code Online (Sandbox Code Playgroud)

php xampp xdebug

7
推荐指数
1
解决办法
1302
查看次数