标签: xdebug

使用PHPStorm和虚拟主机在MAMP PRO上设置XDebug

我是调试的新手,终于找到了一些时间来玩它.但我无法让调试器在PHPStorm(2.1)中运行.

我在Mac(Snow Leopard)上使用MAMP PRO(2.0.1).XDebug已安装(默认为MAMP - 2.1.0)并处于活动状态.

我遵循的其中一个教程就是这个:http: //blog.jetbrains.com/webide/2011/02/zero-configuration-debugging-with-xdebug-and-phpstorm-2-0/

我用这个工具生成书签:http: //www.jetbrains.com/phpstorm/marklets/

在PHPStorm中,我单击"开始监听PHP调试连接"按钮,在Web浏览器中,我使用"启动调试器"链接.然后我刷新网页,期待在PHPStorm中发生一些事情.但没有任何反应.

应该发生什么事,对吧?

我认为它可能与我正在使用的虚拟主机(在MAMP PRO中创建)有关.当我正在开发一个项目时,我正在使用像dev.companyname.com这样的URL

它可以与不同的虚拟主机一起运行,还是必须使用"localhost"?我怎样才能让这个东西起作用?

mamp xdebug phpstorm

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

xdebug,sublime-text-2和KindariSublimeXdebug

我从未使用过Xdebug,但我想开始.我正在使用Ubuntu Linux并且已经能够:

  • 安装php5-xdebug并确保它正在
    通过phpinfo()var_dump()
  • 通过Sublime的软件包管理器安装插件
    我可以通过SHIFT+ F8设置Xdebug网址来访问插件的菜单
  • 在崇高的设置:

    "settings": {
        "xdebug": { "url": "http://your.web.server" }
    }
    
    Run Code Online (Sandbox Code Playgroud)

这是出了什么问题:

  • 我可以在代码中放置断点,但图标似乎是错误的,它只是一个橙色斑点
  • 当我"开始调试"时,调试窗口显示为完全为空
  • 当我访问我的脚本时,它不会停在我的断点处.

我究竟做错了什么?

php linux xdebug sublimetext2

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

Xdebug与Sublime Text 2

我正在尝试使用Sublime Text 2设置Xdebug以在我的本地计算机上调试PHP,但我无处可去.我用PHP 5.4运行MAMP.我在php.ini的末尾输入了这个:

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php5.4.4/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so"
xdebug.remote_enable=On
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.remote_autostart=1
Run Code Online (Sandbox Code Playgroud)

Xdebug.so扩展随MAMP一起提供,我已经验证它位于php.ini文件中指定的位置.我可以在PHP信息中看到Xdebug信息.

在Sublime Text 2中,我安装了这个包,并将项目中的设置更改为:

{
    "folders":
    [
        {
            "path": "/Applications/MAMP/htdocs"
        }
    ],

    "settings": {
        "xdebug": { "url": "http://localhost" }
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以按SHIFT和F8调出Sublime Text 2中插件的菜单,并可以添加或删除断点(代码行左侧会出现一个灰点).当我点击"开始调试"时,它会打开一个浏览器,其中"?XDEBUG_SESSION_START = sublime.xdebug"字符串会附加到网址上.但我的断点没有做任何事情.

我已经尝试添加xdebug_break();到我的代码中,看看是否会停止程序,但事实并非如此.浏览器和IDE似乎根本没有连接......

有任何想法吗?

php breakpoints xdebug sublimetext2

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

在AMPPS上启用Xdebug的问题

我正在尝试在我的AMPPS上启用Xdebug.我使用过Xdebug并遵循给定的指示:在此输入图像描述.

在第6点,我运行make编译xdebug库的命令.然后检查我运行的一切是否顺利make test.我发现了这些错误:

    Failed loading ~/Dev/Testing/xdebug-2.2.6/modules/xdebug.so:  dlopen(~/Dev/Testing/xdebug-2.2.6/modules/xdebug.so, 9): no suitable image found.
  Did find:
        ~wrong architecture
    Failed loading ~/Dev/Testing/xdebug-2.2.6/modules/xdebug.so:  dlopen(~/Dev/Testing/xdebug-2.2.6/modules/xdebug.so, 9): no suitable image found.  
Did find:
        ~/Dev/Testing/xdebug-2.2.6/modules/xdebug.so: mach-o, but wrong architecture
Run Code Online (Sandbox Code Playgroud)

我做错了什么......?这是否是安装/启用Xdebug的理想方式....?如果没有任何turorial ..?

php xdebug ampps

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

在Windows上安装XDebug 64bit

我正在尝试安装XDebug。我正在使用64位的Windows7。我的PHP版本是5.6.3(使用phpinfo();获得了它)。我将xdebug文件放在php文件夹下的ext文件夹中(我将文件重命名为php_xdebug.dll)。

在此处输入图片说明

我将下面的代码放在php.ini文件中,然后重新启动apache。

[XDebug]
zend_extension = "D:\XAMPP\php\ext\php_xdebug.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "D:\XAMPP\tmp"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.trace_output_dir = "D:\XAMPP\tmp"
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_connect_back=1
xdebug.remote_port=9000
xdebug.remote_mode=req
xdebug.idekey="netbeans-xdebug"
Run Code Online (Sandbox Code Playgroud)

但我不能见下文的,而我是想看看使用phpinfo();

在此处输入图片说明

谁能说出问题在哪里?

php apache xdebug

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

PHP调试包的目的

在官方php站点的下载中列出了一个调试包

它是否打算供php核心/运行时的开发人员使用,从而调试php本身?还是针对一般的php网站开发人员,从而调试您网站上的* .php文件(使用xdebug等)?

php debugging xdebug download package

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

如何在Vagrant(Homestead)上使用XDebug和VSCode?

有关如何使用VSCode在Vagrant(Homestead)上设置XDebug的指南

版本:

  1. PHP 7.1
  2. VSCode 1.16.1
  3. XDebug 2.5.5
  4. 流浪者1.9.8

php xdebug vagrant homestead visual-studio-code

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

Microsoft VS代码:当我尝试启动程序错误时,显示“ spawn php ENOENT”

我试图在Microsoft VS Code上运行PHP代码。当我单击启动时,唯一发生的是调试控制台中显示“ spawn php ENOENT”的错误。

为了解决这个问题,我将XDebug的dll文件放入ext文件夹。我将php.ini-development复制到了一个名为php.ini的新文件中,并将其添加到文件末尾。

zend_extension="[file path]" xdebug.remote_enable = 1 xdebug.remote_autostart = 1

这没有改变。

然后,我为防火墙添加了入站规则,以允许端口9000上的入站连接。但是,什么都没有改变。我怎样才能解决这个问题。

php xdebug visual-studio

3
推荐指数
2
解决办法
5718
查看次数

无法解析外部Xdebug连接的服务器名称

我有一个带有xdebug的Docker容器,当我运行脚本时,我需要形成我从PhpStorm收到的Docker容器,消息如下:

Cannot parse server name for external Xdebug connection.
To fix it create environment variable PHP_IDE_CONFIG on the remote server.
Windows: set PHP_IDE_CONFIG="serverName=SomeName"
Linux / Mac OS X: export PHP_IDE_CONFIG="serverName=SomeName".
Run Code Online (Sandbox Code Playgroud)

但我已经设置了这些环境变量,如下面的屏幕截图所示:

在此输入图像描述

xdebug.log

这是我的xdebug部分phpinfo(): 在此输入图像描述 在此输入图像描述

这些是我对PhpStorm的设置:

在此输入图像描述

在此输入图像描述

环境来自phpinfo():

在此输入图像描述

PHP变量来自phpinfo():

在此输入图像描述 在此输入图像描述 在此输入图像描述

我也尝试export用带引号和不带引号的env变量,但结果是一样的......

报价:

XDEBUG_CONFIG="remote_host=192.168.1.110"
PHP_IDE_CONFIG="serverName=docker-server"
Run Code Online (Sandbox Code Playgroud)

没有引号:

XDEBUG_CONFIG=remote_host=192.168.1.110
PHP_IDE_CONFIG=serverName=docker-server
Run Code Online (Sandbox Code Playgroud)

ifconfig en1 inet来自我的MacOS命令的结果,我正在运行Docker和PhpStorm

在此输入图像描述

您还可以在需要的情况下检查以下文件:

任何帮助都感激不尽!

更新:

似乎如果我添加

environment:
  XDEBUG_CONFIG: "remote_host=192.168.1.110"
  PHP_IDE_CONFIG: "serverName=docker-server"
Run Code Online (Sandbox Code Playgroud)

进入我php位于docker-compose.yml内的服务,它解决了这个问题,但给我留下了一个很大的问题.

因为我有:

env_file:
  - ./etc/environment.yml
  - ./etc/environment.development.yml
Run Code Online (Sandbox Code Playgroud)

在里面,./etc/environment.development.yml我有: …

xdebug phpstorm

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

Xdebug Ubuntu 18.04和PHP 7.2

我刚刚将Ubuntu更新到版本18.04,并且我具有7.2版的PHP,如果执行命令“ php -v”,我会得到以下结果

root@laptop1:/etc/apache2/sites-enabled# php -v
PHP 7.2.3-1ubuntu1 (cli) (built: Mar 14 2018 22:03:58) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.3-1ubuntu1, Copyright (c) 1999-2018, by Zend Technologies
    with Xdebug v2.6.0, Copyright (c) 2002-2018, by Derick Rethans
root@laptop1:/etc/apache2/sites-enabled# 
Run Code Online (Sandbox Code Playgroud)

但是,如果phpinfo()通过网络浏览器在php文件中运行命令,则会得到以下信息:它告诉我我具有7.1版的PHP,并且未激活Xdebug。

在此处输入图片说明

因此,Xdebug不适用于我的PhpStorm IDE。我不知道最好的选择是删除所有已安装的PHP版本,并保留不最新的7.0或7.1版本。

php linux xdebug phpstorm

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