Phing - 一個項目構建系統 Phing 是一個基於Apache ANT 的項目構建系統。它的名字是一個拗口的語句首字母縮寫 - PHing Is Not GNU make 。Phing可以做傳統構建系統比如 GNU make 能做的任何事情,同時沒有陡峭的學習曲線。
在phing(以及其他的構建系統)背後的思想是評估一系列相關性,然後執行一系列PHP類去正確的安裝和配置一個應用系統。構建過程用一個簡單的XML配置文件控制。Out of the box, phing內置可以執行一系列替換(比如:在你的開發版本和產品版本間改變include路徑)、執行SQL語句、移動和復制文件、運行外部腳本等等。通過擴展包含在發行包中的“task”類,你也可以創造自己的定制任務。
對任何需要在超過一台服務器上部署大型PHP應用的人來世,Phing是一個無價之寶。同時我發現它對簡單的PHP腳本也是很有用的。
Xdebug - 調試和分析工具 Xdebug 是幫助你調試和分析腳本的一個PHP擴展。Xdebug中最有用的特性是在激活後顯示的新注意信息、警告信息和錯誤信息。如果一個腳本不能正常運行,Xdebug將會輸出關於錯誤信息的完整堆跟蹤 ,會附帶函數名稱、參數值、源文件和行號。這對於厭倦了PHP默認只帶的可憐的錯誤報告功能的程序員是一個值得歡迎的特性。
這個擴展有很多更先進的功能,允許開發人員進行代碼覆蓋率分析,收集分析信息以及交互式地調試腳本。profiling functionality 功能尤其有用。分析器使用一個普通的輸出文件格式,允許你使用象 KCacheGrind 這樣的工具快速發現你代碼中的瓶頸。對任何嚴肅的開發人員而言,一個好的分析器是基本工具,它使得你妥善優化你的代碼,同時避免過早優化帶來的危害。
PHPUnit - 單元測試框架 PHPUnit 是一個輕量級的PHP測試框架。它是在PHP5下面的 JUnit 3.8.1 完整移植,是xUnit 測試框架家族的一員(它們基於軟件模式 先鋒 Kent Beck 的設計)。
單元測試是幾個現代敏捷開發方法的基礎,使得PHPUnit成為許多大型PHP項目的關鍵工具。這個工具也可以被前面討論的Xdebug擴展用來生成代碼覆蓋率報告 ,並且可以與phing集成來自動測試。
Propel - ORM(對象關系映射)框架 Propel是一個PHP5下面的對象關系映射(ORM)框架,它起源於Apache Torque項目。它提供了一個復雜但是易用的數據庫抽象層,使得你可以在PHP中象使用普通類和對象一樣得使用數據庫實體。Propel允許你使用一種簡單的XML格式定義你的數據庫,這個XML文件被用來映射數據庫,生成應用中使用的靜態類。
Propel被內嵌於流行的Symfony PHP框架 (還有其他的),它使得代碼更靈活、模塊化以及可移植。這個項目有The project has 出色的文檔,以及很棒的支持社區。
phpMyAdmin / phpPgAdmin - 基於web的數據庫管理系統 歷史有點長可是還是很有用,phpMyAdmin是對於任何數據庫(對應PostgreSQL和SQLite是phpPgAdmin 和 phpSQLiteAdmin)最有用的管理工具之一。它有助於做每一件事情 - 從為了調試應用去創建和刪除數據庫到做備份。安裝它通常是我在一個LAMP服務器上面安裝完 Apache, PHP和MySQL後做的第一件事情。如果你使用MySQL,不知何故還沒聽說過它,那麼現在就安裝 。
其他工具 還有很多優秀的工具用以符合各種需要,幫助PHP開發者創建一個豐富的開發環境 — 我希望我可以說到所有這些工具。我發現對自己有用的工具有PHP Beautifier, Spyc, Creole和Smarty。我確信還有很多我忘記或者沒聽說過的有用工具。因此,如果你知道某個我遺漏的PHP開發偉大工具,請留言讓我(以及所有人)知道!