一、 語言比較
PHP屬於解釋執行的服務器腳本語言,不需要編譯,方便,但是每次運行都需要翻譯,效率降低。
Java屬於編譯+解釋+編譯性語言 首先要編譯成字節碼.class文件,然後在java虛擬機上解釋執行,一次編譯,到處運行,理論上效率比php好。
二、 數據庫訪問比較
Java通過JDBC來訪問數據庫,通過不同的數據庫廠商提供的數據庫驅動方便地訪問數據庫。訪問數據庫的接口比較統一。
早期PHP對於不同的數據庫採用不同的數據庫訪問接口,所以數據庫訪問代碼的通用性不強。不過目前框架已經幫助我們解決了這個問題,比如thinkphp框架只需要在配置上修改一個數據庫類型參數就可以了。
按照以上理論,連接數據庫上PHP比JAVA效率高。
四、 跨平臺性
Java和PHP都有很好的跨平臺的特性。幾乎都可以在不作任何修改的情況下運行在Linux或者Windows等不同的操作系統上。
五、 開發成本比較
PHP最經典的組合就是:LINUX + PHP + MySQL + Apache。所有的軟件都是開源免費的。開發效率上相對來說比Java快。
Java的Web應用服務器有免費Tomcat、JBoss等。
七、 源代碼安全
PHP開發的程序的源代碼都是公開的,他人拿到php開發的程序後都可以進行修改。目前的辦法只能通過工具對源碼進行加密,但是現在解密工具也比較發達了。
Java開發的程序,最後用戶拿到的是隻是一些編譯好的class類,無法看到完整的源代碼,但是現在的工具也是可以把java反編譯出來的。
八、 OOP和MVC
早期的<=php4版本,對於OOP支持很少,基本也沒有基於MVC模式開發;php5.0以後,OOP支持已經比較好了,目前流行的框架也基本MVC模式。
Java比較早就是OOP思想和MVC模式。
九、 緩存機制
目前PHP的緩存機制比較完善,可以靜態頁面緩存、僞靜態緩存、數據緩存;java在這方面比不上PHP。
總的來說,Java在應用框架底下的架構比其他web開發語言強,Java的框架利於大型的協同編程開發。而PHP上手快,適合於快速開發,中小型應用系統,開發成本低。同樣功能的系統用Java開發的系統相對來說要比PHP開發的系統的價格要高.。在調試、發佈上,PHP也較Java簡單。