我可以将 Zend PDT (eclipse) 链接到浏览器操作吗?

发布于 2024-11-09 10:12:46 字数 205 浏览 6 评论 0原文

是否可以在 Eclipse 中配置 Zend PDT 调试器,以与 Eclipse 的 Java 调试器类似的方式从浏览器操作中命中断点?即设置一个断点,启动调试器,浏览一个站点,然后在遇到断点时进入断点。

我可以调试单个脚本和网页,但是我正在尝试调试从网页调用的脚本。我正在使用 Joomla,希望能够在单击页面内容时遍历依赖项堆栈。

预先感谢您的任何建议..!

Is it possible to configure the Zend PDT debugger in eclipse to hit a breakpoint from a browser action in a similar way to that of the Java debugger for eclipse? I.e. Set a breakpoint, start the debugger, browse a site then drop into a breakpoint when it is hit.

I can debug individual scripts and Web pages however I am trying to debug a script that is called from a webpage. I am using Joomla and want to be able to traverse the dependency stack while click on page content.

Thanks in advance for any advice..!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

提赋 2024-11-16 10:12:46

我找到了如何做到这一点,但它很冗长。它使您能够像调试 Java 一样调试 PHP,因为您可以浏览站点,并且仅在遇到断点之一时才进入调试器。这是 Linux 的配​​置。

安装 Zend 调试器

首先,您需要安装并配置 Zend 调试器:

  • 确保您已安装 Eclipse PDT(PHP 开发工具)。如果不:
    将此存储库添加到“帮助”>“源”列表中安装新软件...:http://download.eclipse.org/releases/helios
  • 展开编程语言包并选择 PHP 开发工具 (PDT) SDK 功能。
  • 单击下一步并安装。
  • 以同样的方式安装 Zend PDT,将此存储库添加到源列表中: http://downloads.z​​end.com /pdt
    • 展开Zend CE 功能并选择Zend 调试器功能,然后单击下一步
  • 重新启动 Eclipse,然后转到 Window >首选项> PHP>调试>安装调试器以确保 Zend 调试器已安装。
  • 配置 php.ini 以指向 ZendDebugger.so 文件。

    • 第一种类型

      <块引用>

      php5 -i | php5 -i | php5 -i | php5 -i grep“已加载配置”

    进入终端找到您需要编辑的正确 php.ini 文件并在文本编辑器中打开它

    • 下一个类型

      <块引用>

      找到 ZendDebugger.so

    进入终端并将位置复制到 php5 调试器文件。

    • 将这些行添加到 php.ini 文件的底部:

      <块引用>
      <块引用>

      [Zend]
      Zend_extension="[ZendDebugger.so 文件的路径]"
      zend_debugger.allow_hosts="127.0.0.1, [您的 IP 地址(如果需要)]"
      zend_debugger.expose_remotely=始终
      替换为从locate 命令返回的路径和您的IP 地址。


  • 通过键入

    重新启动 PHP

    <块引用>

    sudo /etc/init.d/apache2 restart

    进入终端。

  • 然后输入

    <块引用>

    php5-m

    命令进入终端以确保 Zend 调试器已正确配置。你会看到类似的内容:

    <块引用>
    <块引用>

    xmlreader
    xmlwriter
    Zend 调试器
    邮编
    兹库

    [Zend 模块]
    Zend 调试器


    接近垃圾场的尽头。如果您没有看到 Zend Debugger,请确保您已编辑了正确的 php.ini 文件,并确保 ZendDebugger.so 文件的路径有效。确保重新启动 PHP 以便传播任何更改。

配置 Eclipse

接下来您必须配置 Eclipse:

  • 首先转到 Window >首选项> PHP> PHP 可执行文件并确保安装最新的 PHP CLI 库并将其设置为默认值。
  • 接下来,通过转到 Window > 在 Eclipse 中添加 PHP 调试透视图。开放视角>其他> PHP 调试。
  • 现在转到窗口>;首选项> PHP>调试并单击配置项目特定设置。
  • 选择要调试的项目,然后单击“确定”。

    • 选中启用项目特定设置。
    • 以下是您需要的设置:

    <块引用>
    <块引用>

    PHP 调试器:Zend 调试器
    服务器:[项目的本地 URL 路径(应在主机文件中配置此路径)]
    PHP 可执行文件:5.3.x(或更高版本)

    默认基本 URL/基本路径:/
    自动生成的基本 URL:http://[local 项目的 URL 路径]

    • 取消选中“在第一行中断”选项,然后单击“确定”关闭配置窗口,然后在主 PHP 调试页面上取消选中相同的选项。单击“应用”保存设置。
  • 接下来转到窗口>;首选项> PHP> PHP 服务器并添加带有 URL 的新服务器配置

http://[local 项目的 URL 路径]

这应该与主机配置中的 URL 相同您可以使用 in dev' 来访问您的主页。为配置命名并将其设置为默认值。单击“完成”和“确定”,然后重新启动 Eclipse。

  • 接下来转到窗口>;首选项>一般> Web 浏览器,选择“使用外部 Web 浏览器”并选择您想要在调试期间与之交互的浏览器。 >注意:>不要使用火狐! Zend PDT 与其绑定,如果不卸载并重新安装 Firefox,则无法将浏览器与调试器分离。到目前为止,Opera 浏览器与 Zend PDT 的配合效果最好,因此添加它的方法如下:
  • 安装 Opera 浏览器后,转到 Window > >首选项>一般>再次进行 Web 浏览器设置并选择新建并使用这些参数:

    <块引用>
    <块引用>

    名称:歌剧
    位置:/usr/bin/opera
    参数:%URL%


    单击“确定”,选择 Firefox(如果存在)并将其删除,然后选中 Opera 并单击“确定”。

  • 再次重新启动 Eclipse,您就可以开始调试 PHP 了。

使用调试器

  • 在 PHP 透视图中打开一个 PHP 文件并选择“调试为”> PHP 网页可以从“项目”菜单或选择“调试”图标旁边的向下箭头。
  • 您可能会看到一个警告窗口,要求您确认调试 URL。删除基本 URL 之后的所有内容,只留下:

    <块引用>
    <块引用>

    http://[local 项目的 URL 路径]


    作为 URL,然后单击“确定”。

  • 如果 eclipse 没有自动切换到 PHP 调试视角,则手动切换到它。

  • 转到您的浏览器并导航到您上面配置的 URL。您可能需要向前运行调试器才能解决主页问题。有时,在完全绑定调试会话之前,您需要刷新并向前运行调试器几次。
  • 您可以正常浏览站点,调试器将在断点处插入您的代码。

疑难解答

  • 当 PHP 调试会话启动时,有时会话会在页面加载之前结束,并且浏览器中的页面保持空白。尝试右键单击调试堆栈视图中的会话并选择重新启动。
  • 当调试会话第一次启动时,请确保浏览器窗口中的 URL 显示为您配置的基本 URL,即删除 Zend 附加到 URL 的任何调试器参数。从现在开始,URL 应该清晰地显示。
  • 为了更顺利地进行调试,请在完成 PHP 开发之前从 PHP 调试角度删除所有终止的调试会话。
  • 请小心避免在 PHP 调试透视图处于焦点状态时关闭 Eclipse,因为它需要很长时间才能关闭。

I found out how to do this but it is quite long winded. It enables you to debug PHP like you debug Java as in you can browser your site and only drop into the debugger when you hit one of your break points. Here's the config for Linux.

Installing Zend Debugger

First you will need to install and configure the Zend Debugger:

  • Ensure you have the Eclipse PDT (PHP Development Tools) installed. If not:
    Add this repository to your sources list in Help > Install New Software...: http://download.eclipse.org/releases/helios
  • Expand the Programming Languages package and select PHP Development Tools (PDT) SDK Feature.
  • Click next and install.
  • Install the Zend PDT in the same way by adding this repository to your sources list: http://downloads.zend.com/pdt
    • Expand Zend CE Features and select Zend Debugger Feature then click Next.
  • Restart Eclipse and then go to Window > Preferences > PHP > Debug > Installed Debuggers to ensure the Zend Debugger is installed.
  • Configure php.ini to point to the ZendDebugger.so file.

    • First type

      php5 -i | grep "Loaded Conf"

    into a terminal to find the correct php.ini file you need to edit and open it in a text editor

    • Next type

      locate ZendDebugger.so

    into a terminal and copy the location to the php5 Debugger file.

    • Add these lines to the bottom of your php.ini file:

      [Zend]
      Zend_extension="[path to your ZendDebugger.so file]"
      zend_debugger.allow_hosts="127.0.0.1, [your IP address if required]"
      zend_debugger.expose_remotely=always
      substituting in the path returned from your locate command and your IP address.

  • Restart PHP by typing

    sudo /etc/init.d/apache2 restart

    into a terminal.

  • Then type the

    php5 -m

    command into your terminal to ensure the Zend Debugger is properly configured. You will see something like:

    xmlreader
    xmlwriter
    Zend Debugger
    zip
    zlib

    [Zend Modules]
    Zend Debugger

    near the end of the dump. If you don't see the Zend Debugger then make sure you have edited the correct php.ini file and ensure that the path to your ZendDebugger.so file is valid. Make sure to restart PHP for any changes to propagate.

Configuring Eclipse

Next you will have to configure Eclipse:

  • Firstly go to Window > Preferences > PHP > PHP Executables and make sure the latest PHP CLI libraries are installed and set as default.
  • Next add the PHP Debugging perspective in eclipse by going to Window > Open Perspective > Other > PHP Debug.
  • Now go to Window > Preferences > PHP > Debug and click Configure Project Specific Settings.
  • Select the project you want to debug and click OK.

    • Check the Enable project specific settings.
    • These are the settings you will need:

    PHP Debugger: Zend Debugger
    Server: [local URL path to your project (should configure this in hosts file)]
    PHP Executable: 5.3.x (or later)

    Default Base URL / Base Path: /
    Auto-generated Base URL: http://[local URL path to your project]

    • Uncheck the Break at First Line option and click OK to close the config window, then uncheck the same option on the main PHP Debug page. Click Apply to save the settings.
  • Next go to Window > Preferences > PHP > PHP Servers and add a New server config with the URL

http://[local URL path to your project]

this should be the same URL as in your host config that you use in dev' to get to your home page. Give the config a name and set it as default. Click Finish and OK then restart Eclipse.

  • Next go to Window > Preferences > General > Web Browser, select Use external web browser and choose a browser you want to interact with during debugging. >Note:> DO NOT USE FIREFOX! The Zend PDT binds to it and you cannot decouple the browser from the debugger without uninstalling and reinstalling firefox. The Opera browser works by far the best with the Zend PDT so here's how to add it:
  • After installing the Opera browser go to the Window > Preferences > General > Web Browser settings again and select New and use these parameters:

    Name: Opera
    Location: /usr/bin/opera
    Parameter: %URL%

    click OK, select Firefox if it exists and remove it then check Opera and click OK.

  • Restart Eclipse again and you will be ready to start debugging PHP.

Using the Debugger

  • In the PHP perspective open a PHP file and select Debug as > PHP Web Page either from the Project menu or by selecting the downward arrow beside the Debug icon.
  • You may see an alert window asking you to confirm the debug URL. Remove eveything after the base URL to leave just:

    http://[local URL path to your project]

    as the URL and click OK.

  • If eclipse doesn't switch to the PHP Debug Perspective automatically then switch to it manually.

  • Go to your browser and navigate to the URL you configured above. You may need to run the debugger forward for the homepage to resolve. Sometimes you will need to refresh and run the debugger forward a couple of times before it fully binds your debug session.
  • You can navigate site normally and the debugger will drop into your code at breakpoints.

Troubleshooting

  • When the PHP debug session starts sometimes the session ends before the page loads and the page in the browser stays blank. Try right clicking the session in the debug stack view and select Relaunch.
  • When a debug session starts up first time make sure the URL in the browser window appears as the base URL you configured i.e. remove any debugger parameters that Zend appends to the URL. URLs should appear cleanly from now on.
  • For smoother debugging remove all terminated debugging sessions from the PHP Debug perspective before your finish your PHP development.
  • Be careful to avoid shutting eclipse down while the PHP Debug perspective is in focus as it will take a long time to close.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文