PHP VS ASP
發(fā)表時(shí)間:2024-02-01 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]序: 微軟的ASP是一項(xiàng)強(qiáng)大的動(dòng)態(tài)WEB頁面技術(shù),我已經(jīng)使用了一年的ASP,用它創(chuàng)建了許多的WEB站點(diǎn),但是現(xiàn)在我的公司正想轉(zhuǎn)向另一項(xiàng)叫PHP的INTERNET技術(shù),來進(jìn)行以后的WEB站點(diǎn)開發(fā)。 問題是我們已經(jīng)習(xí)慣于使用ASP,并且喜歡用它,為什么我們要轉(zhuǎn)向PHP呢? 開放源碼運(yùn)動(dòng) 首先,...
序:
微軟的ASP是一項(xiàng)強(qiáng)大的動(dòng)態(tài)WEB頁面技術(shù),我已經(jīng)使用了一年的ASP,用它創(chuàng)建了許多的WEB站點(diǎn),但是現(xiàn)在我的公司正想轉(zhuǎn)向另一項(xiàng)叫PHP的INTERNET技術(shù),來進(jìn)行以后的WEB站點(diǎn)開發(fā)。
問題是我們已經(jīng)習(xí)慣于使用ASP,并且喜歡用它,為什么我們要轉(zhuǎn)向PHP呢?
開放源碼運(yùn)動(dòng)
首先,我們認(rèn)識(shí)到,開源運(yùn)動(dòng)使我們獲得了強(qiáng)大的技術(shù)支持和免費(fèi)的代碼供應(yīng)。例如:在ASP中,上傳文件、加密密碼、發(fā)送郵件都需要第三方的商業(yè)軟件的支持,是要收費(fèi)的;但在PHP中,這一切是免費(fèi)的!
但這還不足以說服我們轉(zhuǎn)向PHP,因?yàn)槲覀円呀?jīng)投入了大量的時(shí)間和金錢在這些必需的商業(yè)軟件工具上。
INTERNET程序和LINUX
我有一個(gè)夢(mèng)想,我希望在將來每一個(gè)程序都是一個(gè)INTERNET程序。不用再需要購買軟件包,不要再去安裝它,它們能在INTERNET上得到,并且已經(jīng)是安裝好的,我們只要在瀏覽器中運(yùn)行程序,這不會(huì)需要太多的配置。
大部分的網(wǎng)絡(luò)應(yīng)用程序都運(yùn)行在LINUX和PHP上。它們通常不使用ASP,有一種軟件叫Chilisoft ASP,它能在LINUX上運(yùn)行ASP,但它是要錢的,同時(shí)它也不支持最新版的ASP,更重要的是創(chuàng)建高性能ASP站點(diǎn)所用的好的第三方DLL都不能運(yùn)行在LINUX上。
于是,為了實(shí)現(xiàn)我們的INTERNET軟件夢(mèng)想,我們決定尋找一種更好的,接近于ASP的技術(shù)來替代它!
ISAPI的支持
ZEND團(tuán)隊(duì)正在開發(fā)的PHP核心引擎中就包括一個(gè)ISAPI引擎。
ISAPI是一種MICROSOFT的INTERNET WEBSERVER API,它的應(yīng)用,使我們這些習(xí)慣于在WINDOWS下開發(fā)程序的程序員有了一條通向LINUX的捷徑。
技術(shù)分析
每個(gè)人都聲稱自己的產(chǎn)品最快,這不是我真正關(guān)心的---我只關(guān)心“足夠快”,對(duì)我來說,PHP足夠快!
ASP支持多種程序語言。這種體系使得程序天生就帶有慢和多內(nèi)存占用,它的每一種語言解析就相當(dāng)于一個(gè)PHP編譯,(就是說,當(dāng)ASP開始解析一條代碼時(shí),它相當(dāng)于同時(shí)開動(dòng)多個(gè)PHP),當(dāng)ASP解析到一個(gè)ASP開始標(biāo)記(<%)時(shí),它需要跳出HTML解析進(jìn)程而去選擇另一個(gè)適當(dāng)?shù)慕馕鲞M(jìn)程,當(dāng)它解析到一個(gè)ASP結(jié)束標(biāo)記時(shí),它又得退回到HTML解析進(jìn)程。
同時(shí),ZEND打算發(fā)布一個(gè)可以保護(hù)我們?cè)创a的編譯器,以及各種不同的優(yōu)化技術(shù)(Zend Cache and Optimizer),甚至于實(shí)現(xiàn)PHP在WINDOWS下的良好應(yīng)用,無疑,PHP在這一方面又將強(qiáng)于ASP!
一個(gè)使用PHP的商業(yè)決定
相對(duì)于PHP來說,這里有許多其它的開放源碼選擇,比如說perl,python/zope and jsp/tomact。對(duì)我來說,PHP最接近于ASP,同時(shí)也易于轉(zhuǎn)換!
Perl: 一種不適用于大項(xiàng)目的語言.
Python/Zope:一種很好的語言,但它的體系不如PHP那般的接近ASP.
JSP/Tomcat: 我認(rèn)為,比起腳本語言來,type-safe, type-bound, type-checking Java 不太好操作!
代碼
我們注意到,我們用PHP開發(fā)的代碼比用ASP開發(fā)的要短,這是因?yàn),在PHP中HTTP GET和POST變量自動(dòng)創(chuàng)建為全局變量,這樣我們就不要再花費(fèi)太多的時(shí)間去分析ASP REQUEST對(duì)象了。
同時(shí)PHP的include()函數(shù)非常好,我們能有條件的include代碼,以使我們的代碼盡量精簡,更加易懂!
PHP有著相似于ASP的COOKIE和SESSION管理功能。
結(jié)論:
我現(xiàn)在還在使用PHP,在所有的地方使用“$”這個(gè)符號(hào),它是非常酷的,同時(shí)它也是我最喜歡的一個(gè)符號(hào)!