簡介
Quercus 是一個開源 PHP 5 引擎,它已經擁有了純 Java 的完整實現。Quercus 文檔指出,Quercus 在 Resin 應用伺服器之上運行,利用了Server Load Balancer、代理緩衝等 Resin 特性。本文介紹了在 Apache Tomcat 之上運行 Quercus 所提供的特性。另外,本文還將展示 Quercus 針對 Web 服務和應用程式的 “PHP + Java” 混合方法的易用性和靈活性。
為何選擇 Quercus?
Quercus PHP 庫在 Java 中得到了完整的實現,這對 Java 和 PHP 應用程式都有好處。由於 Java 和 PHP 之間的緊密整合,Quercus 應用程式能夠使用 Java 技術以及 Spring、Hibernate 和 SOA 等架構。為促進這種互通性,Quercus 提供了一個 API,以便從 PHP 調用 Java 庫。
其他好處還包括:
易於開發:PHP 庫在 Java 中實現,這使它們更快速、更穩定、更便於使用。開發人員不必擔心基於C語言的PHP 實現中出現的分段(segmentation)錯誤和 C 指標溢出。
延展性:作為一個基於 Java 的實現,Quercus 在 Resin 和 Apache Tomcat 等應用伺服器之上運行。這樣,它就可以利用應用伺服器提供的所有特性,如串連池、分布式會話等。
國際化:由於 Quercus 是一個 PHP 的 Java 實現,它本身就支援 16 位 Unicode 字串和函數。
安裝 Quercus
安裝 Quercus 很簡單,即將 jar 檔案安裝到一個 Java 應用程式,但由於 Quercus 是 Resin 應用伺服器的一個特性,因此它也構建在 Resin 中。沒有必要下載 PHP 引擎,因為 Quercus 就可以充當 PHP 引擎。按照以下步驟安裝 Quercus:
從公司 Web 網站下載 Resin 應用伺服器。
開啟這個壓縮檔並解壓縮 jar 檔案:quercus.jar、resin-util.jar 和 javamail-141.jar。
將這些檔案和 MySQL 連接器 jar 檔案(如果需要)複製到您的 Web 應用程式的 WebContent\WEB-INF\lib 檔案夾。
另一種簡單的安裝方法是以本文末尾提供的壓縮範例應用程式為基礎,從那裡複製庫。
進入 Quercus
為介紹 Quercus 的特性,我將向您展示一個簡單的 HelloWorld 樣本。這個應用程式可以通過以下步驟建立。(本文使用的所有應用程式都是使用 Eclipse IDE 建立的,有些步驟還提供了螢幕快照,以便它們更加直觀。您也可以選擇其他 IDE)。
以下步驟的基本目的是建立一個動態 Web 應用程式項目,將它指嚮應用伺服器運行時(本例中是 Apache Tomcat),並配置 php.ini 和 web.xml 等參數。
在 IDE(本例中為 Eclipse)中建立一個新的 Web 項目,如圖 1 所示(Alt + Shift + N)。
圖 1. 建立新項目