IntelliJ IDEA:配置Zend調(diào)試器

2019-03-20 17:22 更新

配置Zend調(diào)試器

此功能僅在Ultimate版本中受支持。
以下內(nèi)容僅在安裝并啟用PHP插件時有效!

下載并安裝Zend Debugger

  1. 下載與您的操作系統(tǒng)對應的Zend Debugger軟件包。
  2. 在與您的PHP版本(例如4.3.x,4.4.x,5.0.x,5.1.x,5.2.x,5.3.x,5.4.x)對應的目錄中找到 ZendDebugger.so(Unix)或 ZendDebugger.dll(Windows)文件 。
  3. 將文件復制到Web服務器可訪問的位置中的Web服務器。

啟用Zend Debugger與PHP解釋器的集成

  1. 在編輯器中打開活動文件php.ini:
    1. 在“設(shè)置/首選項”對話框(Ctrl+Alt+S)中,單擊“語言和框架”下的“PHP”。
    2. 在打開的PHP頁面上,單擊“CLI解釋器”字段旁邊的browseButton。
    3. 在打開的“CLI解釋器”對話框中,“配置文件”只讀字段顯示活動php.ini文件的路徑。單擊“在編輯器中打開”。
  2. 找到或創(chuàng)建該[Zend]部分。
  3. 要加載Zend Debugger擴展,請根據(jù)您的操作系統(tǒng)在該[Zend]部分中添加以下行之一:
    • 對于Linux和macOS:
      zend_extension=<full_path_to_ZendDebugger.so>
    • 對于Windows:
      zend_extension_ts=<full_path_to_ZendDebugger.dll>
    • 對于非線性安全的Windows:
      zend_extension=<full_path_to_ZendDebugger.dll>
      非線性安全的Windows二進制文件僅用于Zend Core 2.0。
  4. 要從IntelliJ IDEA啟用對Zend Debugger的訪問,請?zhí)砑右韵滦校?nbsp;
    zend_extension=<full_path_to_zend_debugger_extension>
    zend_debugger.allow_hosts=127.0.0.1
    zend_debugger.expose_remotely=allowed_host
    zend_debugger.tunnel_min_port=<any integer value above 1024> 
    zend_debugger.tunnel_max_port=<any integer value below 65535>
    
    zend_debugger.allow_hosts參數(shù)的值是連接到服務器調(diào)試器的計算機的IP。它可以是以逗號分隔的 Ip 列表, 格式為 x. x. x. x (例如, 192.168.0.6)。
    提示:對于線程安全的Windows二進制文件,請使用zend_extension_ts參數(shù)而不是zend_extension。
  5. 重新啟動Web服務器。
  6. 要檢查Zend Debugger是否已正確安裝和配置,請創(chuàng)建一個包含以下內(nèi)容的文件:
    <?php
        phpinfo(); 
    ?>
    
    在瀏覽器中打開與該文件對應的頁面。輸出應包含Zend Debugger部分。

將Zend Debugger與IntelliJ IDEA集成

  1. 按下Ctrl+Alt+S或選擇:文件|設(shè)置(對于Windows和Linux),或IntelliJ IDEA|首選項(對于macOS)以打開“設(shè)置/首選項”對話框,然后單擊“語言和框架”下的PHP。 
  2. 檢查與所選PHP解釋器關(guān)聯(lián)的Zend Debugger安裝:
    1. 在PHP頁面上,從CLI解釋器列表中選擇相關(guān)的PHP安裝,然后單擊該字段旁邊的“瀏覽( browseButton)”。該列表顯示了IntelliJ IDEA中可用的所有PHP安裝,請參閱配置本地PHP解釋器配置遠程PHP解釋器。
    2. 打開的“CLI解釋器”對話框顯示以下內(nèi)容:
      • 所選PHP安裝的版本。
      • 與所選PHP安裝(Xdebug或Zend Debugger)關(guān)聯(lián)的調(diào)試引擎的名稱和版本。如果未配置調(diào)試器,則IntelliJ IDEA顯示Debugger: Not installed。
  3. 定義Zend Debugger行為。單擊PHP節(jié)點下的Debug。在打開的Debug頁面上,在Zend Debugger區(qū)域中指定以下設(shè)置:
    • 在“調(diào)試端口”文本框中,指定IntelliJ IDEA的端口以通過該工具進行通信。通過zend_debugger.tunnel_min_port和zend_debugger.tunnel_max_port在php.ini文件中指定的tunnel中鍵入端口號。
    • 要讓IntelliJ IDEA通過“調(diào)試端口”文本框中指定的端口接受來自Zend Debugger引擎的任何傳入連接,請選中“可以接受外部連接”復選框。
    • 要在瀏覽器中使用調(diào)試器工具欄,請在“設(shè)置廣播端口”文本框中指定將調(diào)試器設(shè)置傳遞到瀏覽器的端口。
    • 使用“自動檢測IDE IP”復選框可以啟用和禁用熱IP地址的自動檢測。選中此復選框后,IntelliJ IDEA將通過debug_host參數(shù)檢測要發(fā)送到Zend Debugger的所有主機IP地址。所有檢測到的IP地址都列在右側(cè)的文本框中。使用Vagrant,VirtualBox或其他虛擬化工具時,自動檢測IP地址非常有用。
      清除復選框以阻止主機IP地址的自動檢測,并在文本框中明確指定所需的地址。
  4. 在“外部連接”區(qū)域中,指定IntelliJ IDEA如何處理從主機接收的連接以及未注冊為部署服務器配置的端口。
    • 通過未注冊的服務器配置忽略外部連接:選中此復選框可使IntelliJ IDEA忽略從主機和未注冊為部署服務器配置的端口收到的連接。選中此復選框后,IntelliJ IDEA不會嘗試自動創(chuàng)建部署服務器配置。
    • 在PHP腳本的第一行中斷: 選中此復選框可在調(diào)試器與IntelliJ IDEA建立連接后立即停止(而不是在達到第一個斷點之前自動運行)?;蛘咴谥鞑藛紊洗蜷_“運行|在PHP腳本的第一行中斷”選項。
    • 最大同時連接數(shù):使用此選值框限制可以同時處理的外部連接數(shù)。
  5. 若要阻止來自 Z-Ray 系統(tǒng)的請求,如果它們過于頻繁地調(diào)用 IntelliJ IDEA 調(diào)試器而打擾了您, 請選中 "忽略 Z-Ray 系統(tǒng)請求" 復選框。

配置Zend Debugger以在On-Demand模式下使用

IntelliJ IDEA 2016.2及更高版本支持On-Demand模式,您可以在其中禁用Zend Debugger以進行全局PHP安裝,并且只有在調(diào)試命令行腳本或需要代碼覆蓋率報告時才能按需自動啟用它。這使您的命令行腳本(包括Composer和單元測試)運行得更快。

  1. 禁用Zend Debugger用于命令行腳本:
    1. 在“設(shè)置/首選項”對話框(Ctrl+Alt+S)中,選擇“語言和框架”下的“PHP”。
    2. 從PHP可執(zhí)行文件列表中,選擇相關(guān)的PHP解釋器并單擊它旁邊的 browseButton。在打開的“CLI解釋器”對話框中,單擊“配置文件:<path to php.ini>”文件旁邊的“在編輯器中打開”鏈接。關(guān)閉所有對話框并切換到已打開php.ini文件的選項卡。 
    3. 在該php.ini文件中,找到[Zend],并通過在前置詞中添加;來注釋以下行:
      • 對于Linux和macOS:
        zend_extension=<full_path_to_ZendDebugger.so>
      • 對于Windows: 
        zend_extension_ts=<full_path_to_ZendDebugger.dll>
      • 對于非線性安全的Windows:
        zend_extension=<full_path_to_ZendDebugger.dll>
        非線性安全的Windows二進制文件僅用于Zend Core 2.0。
    4. 打開“CLI解釋器”對話框,然后單擊PHP可執(zhí)行文件字段旁邊的 圖標動作刷新svg。IntelliJ IDEA通知您未安裝調(diào)試器:
      ps_interpreters_debugger_not_installed.png
  2. 要在必要時啟用IntelliJ IDEA以激活Zend Debugger,請在“調(diào)試器擴展”文本框的“附加”區(qū)域中指定它的路徑。手動鍵入路徑,或單擊 browseButton,并在打開的對話框中選擇位置。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號