1、專註的領域不同
java是純面向對象開發,功能強大,分支眾多,沒有java不能做的軟件。C/S也好B/S也好。從功能上講,沒有語言可以和java相比。但其優勢也是其劣勢,具體參考後面的瓶頸解釋。
PHP屬於後起之秀,吸收了java和c以及perl等語言優點,專註互聯網領域。在WEB領域中PHP擁有得天獨厚的優勢,WEB領域沒有語言可以和PHP相比。
2、數據庫訪問上不同
Java通過JDBC來訪問數據庫,通過不同的數據庫廠商提供的數據庫驅動方便地訪問數據庫。訪問數據庫的接口比較統壹。
PHP對於不同的數據庫采用不同的數據庫訪問接口,所以數據庫訪問代碼的通用性不強。例如:用Java開發的Web應用從MySQL數據庫轉到Oracle數據庫只需要做很少的修改。而PHP則需要做大量的修改工作。
3、系統技術架構上不同
Java語言有著完備的MVC框架,包括視圖層、業務控制層和持久層,在Spring框架中,我們可以通過IOC和AOP降低編碼過程中的高耦合,也就是說Java中的這些框架可以讓開發者有更廣闊的空間去設計科學合理的架構,也體現著Java多層架構的特點。
相比Java而言,PHP留給開發者的空間並不多,但PHP近些年也在改進,迎合電子商務的需要,引入MVC設計模式,但成熟性和穩定性上與Java還是有著不小的差距。不得不提的是PHP可兼容MySQL開發,這使得在考慮成本因素的前提下,PHP變得小而精,收到了壹些中小型網站的青睞。
4、安全性上不同
在同是開源和跨平臺的java面前,php丟掉了很多的優勢,在代碼的安全性上尤為突出。
php的開發程序在別人拿到代碼後,可以很容易的進行修改。而java開發的程序由於無法看到完整的源代碼,只能看到壹些編譯好的類文件,所以安全性較高。
5、開發成本上的不同
PHP最經典的組合就是:PHP + MySQL + Apache。非常適合開發中小型的Web應用,開發的速度比較快。而且所有的軟件都是開源免費的,可以減少投入。
Java的Web應用服務器有免費Tomcat、JBoss等,如果需要更好的商業化的服務有:Web Sphere和 Web logic。
6、學習的難易程度不同
php是解釋執行的服務器腳本語言,首先php有簡單容易上手的特點。語法和c語言比較象,所以學過c語言的程序員可以很快的