2007年02月9日

Development within Eclipse PHP IDE (PDT)

php eclipse pdt ide debugger

今天在 IBM developerWorks 的 Open Source 專區中看到《PHP development within Eclipse》這一篇文章。看了一下,原來在介紹 Eclipse 中的 PHP IDE project 。文章中使用的版本和我現在用的版本一樣 (去年12月釋出) 。我使用 PHP IDE project 後,覺得跟 Java/CDT 比起來功能還是很陽春,編輯功能也不算順手。所以目前我仍然使用 PSPad 作為程式編輯器。

順道看了一下 PHP IDE project 的網站,發現計劃名稱改為 PDT (PHP Development Tool) 了。以下就用 PDT 稱呼 PHP IDE 。

雖說功能陽春,其實 PDT 目前在程式碼結構瀏覽與即時提示這一方面仍然很方便。此外,它可以在視覺環境下操作 CVS/SVN 以及 Debugger ,對程序員的開發工作助益不少。有興趣的可以到 PDT projects downloads 頁面下載工具。未用過 Eclipse 者可以下載 All in One 包裝;已安裝 Eclipse 者,可透過 Software udpate 安裝 PDT package ,但 Eclipse 要 3.2.1 以上版本。《PHP development within Eclipse》中有圖文並茂的安裝說明 (包含 Zend Debugger) 。我補充一些使用時的擷取畫面。

手冊路徑設定
PDT 的 本地 PHP Manual 路徑設定

PDT 預設是查詢 PHP 網站上的線上 PHP manual ,這種作法的反應速度當然很慢。所以我是自行下載 HTML 多頁版的 PHP manual 到工作電腦上,再設定 PDT 預設查詢的手冊路徑為本地路徑。但線上版 manul 有個優點,就是有使用者加上的回應內容與經驗談。如果想用線上版 manual ,建議將線上版 manual 的 URL 從 www.php.net 改為台灣映射站 tw.php.net ,反應速度會快上許多。

變數名稱即時提示
即時變數名稱提示畫面

輸入時會即時提示變數名稱,可以用鍵盤上、下方向鍵從提示清單中挑選變數。

函數宣告即時提示
函數宣告提示畫面

輸入函數名稱再加上左邊的小括號,例如 preg_match( 時, PDT 會自動補齊右邊的小括號並提示函數參數宣告內容。但目前只能提示 PHP 內建函數,無法提示使用者定義的函數。此外,提示內容顯然來自一份另外整理的資料而不是直接解析 PHP manual ,因此新加入的 PHP 函數也不會提示,例如 json_decode() 這個 PHP 5.2 的新增函數就不會出現提示內容。


Posted by shirock at 樂多Roodo! │09:46 │回應(4)引用(1)PHP
樂多分類:網路/3C 共同主題:PHP基本語法 工具:編輯本文
Ads by Roodo! 

引用URL

http://cgi.blog.roodo.com/trackback/2711065
引用列表:
之前提過 PHP Development Studio ,它是基於 Ecplise PHPEclipse 的一套 PHP 開發工具。然而
Eclipse 上的 PHP 開發工具 - 安裝篇【網站製作學習誌】 at 2007年03月22日 18:02
回應文章
這個 IDE 目前我不用是因為兩點:
1. 沒有 Class Explorer
2. Code Beautiful 功能對中文變數會爛掉
Posted by tokimeki at 2007年02月9日 16:02
左下角的那個不是你要的 class explorer 嗎?

我沒用過 code beautiful 功能... 說到基本的編輯動作,我覺得 PDT 不是很方便,反而不如 PSPad, UltraEdit 這些專業編輯器。雖然即時變數提示功能很方便,但我們又不是在寫 Java/C# ,輸入冗長符號名稱的機會不高。所以當我發現 PDT 的基本編輯功能不方便時,就沒有用了。
Posted by 遊手好閒的石頭成 at 2007年02月9日 17:58
配置Web Server Debugger 时调试不了,不知什么原因,我下载了 Debugger Extension Binaries 按包里的Readme 说明操作了。
重启Apache后, PHPINFO 显示出来是这种情况:

Expose Zend Debugger always
Passive Mode Timeout 20 seconds

Directive Local Value Master Value
zend_debugger.allow_hosts no value no value
zend_debugger.allow_tunnel no value no value
zend_debugger.connect_password no value no value
zend_debugger.connector_port 10013 10013
zend_debugger.deny_hosts no value no value
zend_debugger.httpd_uid -1 -1
zend_debugger.max_msg_size 2097152 2097152

这个好像有问题是吗?
Posted by 石军 at 2007年04月10日 10:36

個人覺得很好用
如果是大型專案的話
把php當java來開發速度上會快上許多
目前是希望還能再加入對smarty的支援以及儲存後自動上傳
Posted by MarsZ at 2008年05月15日 18:00