繁体   English   中英

Xdebug与Sublime Text 2

[英]Xdebug with 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

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

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

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

    "settings": {
        "xdebug": { "url": "http://localhost" }
    }
}

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

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

有任何想法吗?

首先,Kindari的xdebug插件并不是你会感到高兴的东西。 他把这个插件作为一个试验,在编写时学习了崇高的api,所以它充满了问题,硬编码的变量和东西。 我最终放弃了它并卸载了该插件,它只是没用(但它有效)。 恕我直言的最大缺陷之一是无法显示超过1级深度的数组变量。 他在github上发布他几个月前将从头开始重写它,从那以后它似乎被抛弃了,但我仍在拼命等待新版本问世,我甚至考虑学习python并自己编写。

好吧,如果你不想尝试它,首先要确保Xdebug工作,通过尝试与其他一些Xdebug客户端。 如果Xdebug在其他地方工作,请确保安装了python2.6,因为它不适用于2.7。 如果您运行的是ubuntu 12.04,python2.6不在存储库中,那么从插件自述文件中可以找到Ubuntu 12.04的解决方法:

  1. 下载[http://packages.ubuntu.com/lucid/python2.6][python2.6]。
  2. 提取它:

     dpkg-deb -x python2.6_2.6.5-1ubuntu6_i386.deb python2.6 
  3. 将解压缩的usr / lib / python2.6文件夹复制到{Sublime Text directory} / lib(= / usr / lib / sublime-text-2 / lib /)

记住两件事:首先,有一个文件/usr/lib/sublime-text-2/lib/python26.zip,所以不要删除这个文件。 第二,在你提取的.deb中,其中有usr / lib / python2.6,这就是你要复制的内容,而不是整个python2.6目录。 所以,如果你在那个解压缩的.deb之外,

cp -r python2.6/usr/lib/python2.6 /usr/lib/sublime-text-2/lib

可能会做这个工作。 我在这里不太确定,如果你应该复制那个python2.6 / usr / lib / python2.6文件夹或只是它的内容,我确实复制了它们并没有搞砸任何东西。

你安装python版本2x? 尝试安装python,或设置xdebug.remote_enable = 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM