資源描述:
《php版本比較》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、PHP版本VC6與VC9、ThreadSafe與None-ThreadSafe等的區(qū)別最近發(fā)現(xiàn)很多PHP程序員對PHP版本知識了解不是很清楚,自己也看了不少類似的文章,還是感覺不夠明確和全面,網(wǎng)上的結(jié)論又都是模棱兩可,在此,給出最完整甚至武斷的解釋。?本文講解:VC6與VC9,ThreadSafety與None-ThreadSafe,Apachemodule與fastcgi的區(qū)別與選擇。PHP的大版本主要分三支:PHP4/PHP5/PHP6 其中,PHP4由于太古老、對OO支持不力已基本被淘汰,請無視PHP4。 PH
2、P6由于基本沒有生產(chǎn)線上的應(yīng)用,還基本只是一款概念產(chǎn)品,很多功能已在PHP5.3.3上實現(xiàn),所以也不詳述,請無視PHP6?! HP5的版本主要分四支:PHP5.2之前的版本、PHP5.2.X、PHP5.3和日前發(fā)布的PHP5.4。那我們應(yīng)該如何選擇適用自己項目的版本呢???PHP5.2之前的版本不值得考慮,因為某些功能缺陷或者BUG,PHP5.2之前的版本。PHP5.4還處于Beta試用的版本號,非穩(wěn)定版本,請無視PHP5.4。 主流PHP程序?qū)HP5.2.X的兼容性最好,而每次版本號的升級帶來的都是安全性和穩(wěn)定性
3、的改善,所以宜挑選最新的版本。目前PHP5.2系列最新的是PHP5.2.17?! 《绻a(chǎn)品是自己開發(fā)自己使用,PHP5.3在某些方面更具優(yōu)勢,在穩(wěn)定性上更勝一籌,增加了很多PHP5.2所不具有的功能,比如內(nèi)置php-fpm、更完善的垃圾回收算法、命名空間的引入、sqlite3的支持等等,是部署項目值得考慮的版本,強烈推薦PHP5.3.3?! 〕税姹咎柕牟煌?,同一版本號的PHP版本也有區(qū)別,并且在選擇PHP擴展的時候需要注意。?install版:可執(zhí)行的MSI格式安裝包。?ZIP版:解壓即可用,與install版無區(qū)別
4、。建議選擇ZIP版。?DEBUG版:請無視。VC6與VC9 對于VC6還是VC9版本的選擇,PHP官方網(wǎng)站有詳細的描述,原文如下:WhichversiondoIchoose?IfyouareusingPHPwithApache1orApache2fromapache.orgyouneedtousetheVC6versionsofPHPIfyouareusingPHPwithIISyoushouldusetheVC9versionsofPHPVC6VersionsarecompiledwiththelegacyVisu
5、alStudio6compilerVC9VersionsarecompiledwiththeVisualStudio2008compilerandhaveimprovementsinperformanceandstability.TheVC9versionsrequireyoutohavetheMicrosoft2008C++Runtime(x86)ortheMicrosoft2008C++Runtime(x64)installedDoNOTuseVC9versionwithapache.orgbinaries我該選擇哪
6、個版本?如果你在apache1或者apache2下使用PHP,你應(yīng)該選擇VC6的版本如果你在IIS下使用PHP應(yīng)該選擇VC9的版本VC6的版本使用visualstudio6編譯VC9使用VisualStudio2008編譯,并且改進了性能和穩(wěn)定性。VC9版本的PHP需要你安裝Microsoft2008C++Runtime不要在apache下使用VC9的版本TS和NTSTS指ThreadSafety,即線程安全,一般在IIS以ISAPI方式加載的時候選擇這個版本。NTS即None-ThreadSafe,一般以fastcgi
7、方式運行的時候選擇這個版本,具有更好的性能?! ?000年10月20日發(fā)布的第一個Windows版的PHP3.0.17開始的都是線程安全的版本,這是由于與Linux/Unix系統(tǒng)是采用多進程的工作方式不同的是Windows系統(tǒng)是采用多線程的工作方式。如果在IIS下以CGI方式運行PHP會非常慢,這是由于CGI模式是建立在多進程的基礎(chǔ)之上的,而非多線程。一般我們會把PHP配置成以ISAPI的方式來運行,ISAPI是多線程的方式,這樣就快多了。但存在一個問題,很多常用的PHP擴展是以Linux/Unix的多進程思想來開發(fā)的
8、,這些擴展在ISAPI的方式運行時就會出錯搞垮IIS。因此在IIS下CGI模式才是PHP運行的最安全方式,但CGI模式對于每個HTTP請求都需要重新加載和卸載整個PHP環(huán)境,其消耗是巨大的。 為了兼顧IIS下PHP的效率和安全,微軟給出了FastCGI的解決方案。FastCGI可以讓PHP的進程重復(fù)利用而不是每一個