幾款流行 PHP IDE的比較與使用

編寫關於 PHP 的系列文章讓我更加深刻地瞭解了 PHP 開發人員的世界。我和許多 PHP 程序員交談過,最令我驚奇的是隻有很少的人使用 IDE。大多數程序員使用文本編輯器,比如 Microsoft® Windows® 上的記事本、Emacs 或者 Vim。 

我提到的這些文本編輯器(以及我沒提到)都是很不錯的 —— 我不想討論哪個編輯器更好。但是,我要強調的是不使用文本編輯器會使您對 PHP 代碼有更深的見解。幾乎所有人都將 PHP 項目視爲只不過是文件目錄而已(這種看法十分片面)。現在就讓我帶您進入 IDE 的世界,向您展示 IDE 能夠 —— 或者應該 —— 給您帶來什麼,並向您介紹七個最流行的PHP IDE。 

什麼是 IDE? 

簡而言之,IDE 爲編碼工作提供了一站式服務。IDE 包括一個編輯器,在此編輯器內可以編輯代碼、調試代碼、在瀏覽器(通常是嵌入式的)中查看代碼和簽入和簽出源碼控制。爲了支持這些功能,IDE 擁有一套在基本編輯器(比如記事本或者 Vim)中所找不到的特性。當然,您可以通過擴展編輯器來實現這些功能,但是 IDE 在一個精簡軟件包中囊括了所有這些功能 —— 並都已預配置: 

項目 

IDE 的一個關鍵特性是它把一個 PHP 應用程序看作是一個項目,而不僅僅是一組文件。這個概念 —— 項目 —— 維護額外的信息,比如源碼控制的配置、用於調試的數據庫設置,以及某一關鍵目錄所在位置。 

調試 

另一個方便的特性是集成調試。使用這個功能,可以在編輯器中設置斷點,當 PHP 解釋程序執行到這個腳本時就會停止。從斷點開始,就可以檢查局部變量的值,在代碼中診斷問題。在代碼中可以使用 echo 語句來檢查值或者也可以使用錯誤日誌獲得變量的值。 

代碼智能 

PHP 是一種非常規則的編程語言,這意味着它遵循着簡單的模式。這些模式不僅使代碼易於編寫,也使 IDE 在項目中檢查代碼變得很容易。此外,它們可以通過顯示檢查結果幫助您編寫程序。例如,如果在項目中定義了一個名爲 MyClass 的類,在鍵入關鍵詞 new 時,IDE 會立即提供一個包括 MyClass 作爲選項的彈出窗口。當使用那種類型的對象時,IDE 就會顯示它的可用方法和實例變量。當開始鍵入一個函數命令時,IDE 就會顯示它的可用參數。公正地說,這是應該使用 IDE 而不是文本編輯器的首要原因。這種代碼智能可以有效減少敲錯類名、方法名和參數。 

類視圖 

IDE 中的代碼智能引擎產生的另一個作用是 IDE 可以產生項目的 類視圖。系統不是顯示文件,而是顯示已經定義的不同的類,而不管它們所在的文件。當單擊類時,編輯器訪問相應文件並顯示相應類、方法或者實例變量。這在大項目中是一種非常好的導航方法。 

多語言支持 

這裏提到的每種 IDE 不僅支持 PHP 而且支持相關語言集:JavaScript、Structured Query Language(SQL)、Hypertext Markup Language(HTML)和 Cascading Style Sheets(CSS)。因爲 HTML 和 CSS 比較簡單,所以 IDE 對它們的支持是最好的。對於 JavaScript 的支持經常會突出語法,但是支持比不支持要好。 

源碼控制 

這裏評價的所有 IDE 都支持一些與源碼控制系統的連接,允許隨着時間維護項目中的文件版本。可以標記文件的特別版本爲發佈版本,這樣在需要撤銷改動的時候就可以恢復。在團隊環境中使用源碼控制系統是很關鍵的,即使對於個人使用也很重要。當磁盤癱瘓或者客戶突然想要以前的版本而不是現在的版本的時候,一個好的源碼控制系統就可以發揮作用了。大多數的 IDE 都支持 Concurrent Version System (CVS) 和 Subversion,它們都是開源控制系統。其中一種 IDE 支持 Perforce —— 一款商業源碼控制系統。 

FTP/SFTP 集成 

與源碼控制相關的一種功能是在服務器中對於最新的代碼使用 FTP 。這比使用 FTP 客戶機或者自己打包文件併發送給服務器然後再解包要容易許多。 

數據庫導航 

一個非基本但十分有用的特性是數據庫導航。使用這個特性,可以瀏覽應用程序訪問的數據庫、找到表格和字段名並返回查詢結果。一些系統甚至可以自動寫入一些數據庫訪問代碼。 

集成 Web 瀏覽器 

一些 IDE 支持集成 Web 瀏覽器,可以直接導航到正在使用指定的附加參數編輯的頁面,這個瀏覽器可以宿主在 IDE 內,也可以外部調用。誠實地講,我並不大喜歡集成瀏覽器,因爲我不介意在編輯代碼和查看結果這兩個獨立的應用程序之間切換。但是我知道它確實有一定的作用,但您不必一定要使用它。 

片段 

在所有這些 IDE 中我發現的最後一個特性是對於整段和定製代碼片段的支持。片段 是完成小任務(比如在一些輸入中運行常規表達式、連接到數據庫和查詢數據庫)的小部分代碼。 

以上總結了目前從購買的或者開源的 IDE 中可以預期的核心特性。接下來,將會介紹一些流行的 IDE,展示一些 IDE 圖片,並將解釋它們所支持的功能及其成本。 

Eclipse  

在 Eclipse 開發平臺中有兩個插件支持 PHP。第一個 PHP IDE 項目是 Eclipse Foundation 項目,這意味着它在 Eclipse 許可範圍內發佈,並使用 Eclipse Foundation 工具和方法開發。 下載Eclipse以及MyEclipse 插件 

另一個是 PHP Eclipse,它是獨立開發的。因爲使用 Eclipse,所以這兩個插件都可以在三大操作系統中運行:Windows、Linux® 和 Mac OS X。您可以只下載這兩個插件(如果已經使用 Eclipse),或者下載包含所需要的全部內容的 pre-fab 版本。 

這兩個插件都支持核心 IDE 特性。特別是代碼智能特性,它十分強大,可以在需要的時候彈出並顯示所有需要的類、方法和參數信息。 


圖 1 顯示了 Mac OS X 上運行的 PHPEclipse。左邊是在項目中文件的項目視圖。下面是類視圖,顯示所有已經定義的類。中間是代碼。可以同時在多個選項卡中打開多個文件。右邊是調試和瀏覽的面板。這是常用的 PHPEclipse 用戶界面。 

圖 1. OS X 上的 PHPEclipse 

 
圖 2 顯示了來自 Eclipse Foundation 的 PHP IDE 項目插件。 

 
圖 2. OS X 上的 PHP IDE 項目 

如果您不能看出區別,沒有關係。這兩個插件看起來確實非常類似,因爲它們都依靠 Eclipse 平臺呈現代碼瀏覽和智能特性。Eclipse 插件 GUI 能夠保持連貫性是件很好的事情。 

我沒有發現哪一個插件可以把您鎖定在某一個 Eclipse 項目中。您可以經常地將一個插件換成另一個插件。在我有限的測試中,我更喜歡 PHP IDE 項目插件,因爲我感覺它集成得更好,而且代碼智能特性的性能似乎更快捷。試試這兩個插件,看看您更喜歡哪一個。 

這兩個插件的缺點是 UI 不是爲 PHP 量身訂做的,原因是 Eclipse 可以用於幾乎所有的編程語言。結果是,Eclipse 的術語最初有些另類。如果您剛開始學習 Eclipse,那麼這些插件的學習比其他 IDE 更難一些。但是,如果已經瞭解 Eclipse,那麼您就能比較快地熟悉 PHPEclipse 或者 PHP IDE 項目。 

Eclipse 和這些插件的最大優點是什麼?它們是免費的,而且穩定、可靠。哦,我提到它們是免費的嗎? 

Komodo 

下一個要介紹的是 ActiveState 的 Komodo IDE。這個 IDE 在 Windows、Mac OS X 和 Linux 上運行,並支持通用的開源語言 —— Perl、PHP 和 Ruby。代碼智能引擎非常可靠。它掃描所有語言安裝找到定製擴展,比如 PEAR 模塊。在項目方面,它支持與 CVS、Subversion 和 Perforce 的集成,也允許直接向服務器 FTP 傳遞代碼。 下載Komodo IDE 

圖 3 顯示了在 Windows 上運行的 Komodo。左邊是類視圖,右邊是項目視圖。中間的主要部分是代碼視圖。下面是調試用的斷點、命令輸出等等。對於所有這些系統,都可以根據需要定製 UI 。 

圖 3. 在 Windows 上運行的 Komodo 
 
它的缺點是沒有數據庫集成(至少我沒有找到),而且我還遇到了代碼智能不總是在想要的時候彈出的小問題。但是,總的來說,Komodo 還堪稱是一款健壯的、特色豐富的、可靠的 PHP IDE。 

PHP 設計器 

PHP 設計器與其他 IDE 不太相同。當然,它支持有限的代碼智能。但是,它更集中於 PHP Web 應用程序的設計方面。這一點在其集成的瀏覽器上可見一斑,該瀏覽器特別地採用了像素標尺用於幫助在頁面上定位元素。下載 PHP Designer 

圖 4 顯示了運行的 PHP 設計器。 

圖 4. 在 Windows 上的 PHP 設計器 
 
PHP 設計器中的 PHP 的代碼智能和調試特性不是很顯著,而對 HTML、CSS 和 JavaScript 的代碼智能支持上要相對更強一些。PHP 設計器介於程序員使用的 IDE (主要側重於代碼)和 Adobe Dreamweaver (更側重於設計)之間。如果您正在尋找這類中間產品,那麼 PHP 設計器很值得考慮,因爲 IDE 對於個人使用是免費的,而其專業版也只需 US$55。 

PhpED 

NuSphere 的只用於 Windows 的 PhpED 在所有這裏介紹的 IDE 中特性是最豐富的。它有一個很好的內部調試器,併爲了更容易地訪問頁面調試而把調試工具條放到了 Microsoft Internet Explorer®之內。下載 PhpED 

圖 5 顯示了在 Windows 中使用 PHPEd 開發 PHP 應用程序。在最左邊是項目的文件視圖。右邊緊挨着的是類視圖,最右邊是代碼視圖。下面是輸出狀態。您可能已經注意到,所有這些 IDE 都遵循着相同的基本設計風格。 

圖 5. 在 Windows 中的 PhpED 
 
PhpED 的突出特性包括一個很棒的調試器、優秀的數據庫訪問、較好的代碼智能特性以及集成的 PHP 幫助。PhpED 的價格範圍從基礎版本的 US$119 到專業版本的 US$495。另外還有試用版本可用。 

PHPEdit 

來自 WaterProof Software 的 PHPEdit 感覺像是應用於 PHP 的 Microsoft msdev 環境 —— 這是個不錯的事情。PHPEdit 是僅用於 Windows 的 IDE,很容易設置。它甚至還有 PHP 的版本。在 PHP、CSS 和 HTML 的代碼智能方面它做得很好,但是卻不提供對 JavaScript 的代碼智能的支持。圖 6 顯示了運行的 PHPEdit。下載PHPEdit 

圖 6. 在 Windows 中的 PHPEdit 
 
爲了便於部署,PHPEdit 可以連接到 CVS 和 Subversion,以及 FTP 和它自己專有的 ezDeployment 系統。除了代碼智能特性,爲了加速開發,這款 IDE 有一個極好的代碼示例整體模板庫,您還可以向庫裏面添加內容。PHPEdit 的評估版本可以免費使用,要得到正式版本,需要 US$89。 

Zend Studio 

最後,我們談談 Zend Studio,它被最後列出只是因爲它以 Z 開頭。它可能應該是您第一個想到的。爲什麼?因爲它來自 Zend —— PHP 幕後的精英團隊。 而且它真的是很不錯。它運行於三大系統:Windows、Mac OS X 和 Linux。而且絕對能夠提供您所需要的一切:PHP V4、PHP V5 等等。它的下載需要花很長時間,但是非常值得。下載 最新版Zend Studio 9.0 

作爲 IDE,Zend Studio 是最好的。它提供所有想在內置庫和定製代碼中擁有的代碼智能特性。它還有非常好的調試功能,而且極易設置。要把代碼放到存儲庫(repository)中,Zend Studio 會連接到 CVS 和 Subversion。要把代碼放到服務器上,有集成 FTP 可以使用。Zend Studio 非常適合 Macintosh,如圖 7 所示。 

圖 7. 在 Mac 上的 Zend Studio 
 
在其他一些 IDE 中,代碼片段是內置的以使代碼編制更爲容易。這款 IDE 也直接集成了數據庫以給出可用的表格和字段。 

結束語 

有許多極好的 IDE 可供選擇 —— 其中一些甚至是免費的 —— 您儘可以選擇一個試用一下,如果您是專業人員,就更應如此。您可能需要支付公司或者個人的顧問費用,也可能要花錢購買必需的商品。如果考慮使用 echo 調試代碼對比使用集成的調試器所花費的時間,IDE 的購買價格絕對會物有所值。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章