




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第第頁PHP語言發展歷程PHP繼承自一個老的工程,名叫PHP/FI。PHP/FI在1995年由RasmusLerdorf創建,最初只是一套簡單的Perl腳本,用來跟蹤訪問他主頁的人們的信息。下面是我幫大家整理的PHP語言發展歷程,希望對大家有所幫助。
PHP語言發展歷史
1、1994年,RasmusLerdorf開始計劃發展PHP,并在1995年以PersonalHomePageTools對外發表第一個版本。在這早期的版本中,提供了訪客留言本、訪客計數器等簡單的功能。
2、1995年,第二版的PHP問市,定名為PHP/FI(FormInterpreter)。PHP/FI并加入了mSQL的支持,自此奠定了PHP在動態網頁開發上的影響力。
3、1996年底,有15,000個Web網站使用PHP/FI。
4、1997年,使用PHP/FI的Web網站成長到超過50,000個。ZeevSuraski及AndiGutmans加入了開發小組,開始了第三版的開發計劃,從此PHP成為了真正意義上的開源項目。
5、1998年6月,PHP.net發布了PHP3.0。在這一版本中PHP可以跟Apache服務器緊密地結合,幾乎可以支持所有主流與非主流數據庫;而且它擁有非常高的執行效率,這些優勢使1999年使用PHP的網站超過了150,000個。
6、現在PHP5.0版本強化更多的功能。首先,完全實現面向對象,提供名為PHP兼容模式的功能。其次是XML功能,PHP5.0版本支持可直觀地訪問XML數據、名為SimpleXML的XML處理用界面。同時還強化了XMLWeb服務支持,而且標準支持SOAP擴展模塊。數據庫方面,PHP新版本提供旨在訪問MySQL的新界面--MySQLi。除此前的界面外,還可以使用面向對象界面和預處理語句(PreparedStatement)等MySQL的新功能。另外,PHP5.0上還捆綁有小容量RDBMS--SQLite。
PHP繼承自一個老的工程,名叫PHP/FI。PHP/FI在1995年由RasmusLerdorf創建,最初只是一套簡單的Perl腳本,用來跟蹤訪問他主頁的人們的信息。它給這一套腳本取名為PersonalHomePageTools。隨著更多功能需求的增加,Rasmus寫了一個更大的C語言的實現,它可以訪問數據庫,可以讓用戶開發簡單的動態Web程序。Rasmus發布了PHP/FI的源代碼,以便每個人都可以使用它,同時大家也可以修正它的Bug并且改進它的源代碼。
PHP/FI,一個專為個人主頁/表單提供解釋程序的程序,已經包含了今天PHP的一些基本功能。它有著Perl樣式的變量,自動解釋表單變量,并可以嵌入HTML。語法本身與Perl很相似,但是它很有限,很簡單,還稍微有些不協調。
到1997年,PHP/FI2.0,也就是它的C語言實現的第二版在全世界已經有幾千個用戶(估計)和大約50,000個域名安裝,大約是Internet所有域名的1%。但是那時只有幾個人在為該工程撰寫少量當代碼,它仍然只是一個人的工程。
PHP/FI2.0在經歷了數個beta版本的發布后于1997年11月發布了官方正式版本。不久,PHP3.0的第一個alpha版本的發布,PHP從此走向了成功。
PHP3
PHP3.0是類似于當今PHP語法結構的第一個版本。AndiGutmans和ZeevSuraski在為一所大學的項目中開發電子商務程序時發現PHP/FI2.0功能明顯不足,于是他們重寫了代碼。這就是PHP3.0。經過Andi,Rasmus和Zeev一系列的努力,考慮到PHP/FI已存在的用戶群,他們決定聯合發布PHP3.0作為PHP/FI2.0的官方后繼版本。而PHP/FI2.0的進一步開發幾乎終止了。
PHP3.0的一個最強大的功能是它的可擴展性。除了給最終用戶提供數據庫、協議和API的基礎結構,它的可擴展性還吸引了大量的開發人員加入并提交新的模塊。后來證實,這是PHP3.0取得巨大成功的關鍵。PHP3.0中的其它關鍵功能包括面向對象的支持和更強大和協調的語法結構。
這個全新的語言伴隨著一個新的名稱發布。它從PHP/FI2.0的名稱中移去了暗含本語言只限于個人使用的部分。它被命名為簡單的縮寫PHP。這是一種遞歸的縮寫,它的全稱是PHP:HypertextPreprocessor。
1998年末,PHP的安裝人數幾近10,000,有大約100,000個網站報告他們使用了PHP。在PHP3.0的頂峰,Internet上10%的Web服務器上都安裝了它。
約九個月的公開測試后,官方于1998年6月正式發布PHP3.0。
PHP4
1998年的冬天,PHP3.0官方發布不久,AndiGutmans和ZeevSuraski開始重新編寫PHP代碼。設計目標是增強復雜程序運行時的性能和PHP自身代碼的模塊性。PHP3.0的新功能和廣泛的第三方數據庫、API的支持使得這樣程序的編寫成為可能,但是PHP3.0沒有高效處理如此復雜程序的能力。
新的被稱為ZendEngine(這是Zeev和Andi的縮寫)的引擎,成功的實現了設計目標,并在1999年中期首次引入PHP。基于該引擎并結合了更多新功能的PHP4.0,在PHP3.0發布兩年后,于2000年5月發布了官方正式版本。除了更高的性能以外,PHP4.0還包含了其它一些關鍵功能,比如:支持更多的Web服務器;HTTPSessions支持;輸出緩存(outputbuffering);更安全的處理用戶輸入的方法;一些新的語言結構。
PHP4是當前PHP的最新版本。修改和增強ZendEngine以使PHP5.0整合新功能的工作已經開始。
今天,已經有10,000名開發人員(估計)和幾百萬網站報告已安裝了PHP,占整個Internet域名的20%。
PHP的開發小組有很多優秀的開發人員,同時還有大量的優秀人才在進行PHP相關工程的開發工作,如PEAR和PHP文檔的工程。
PHP5
PHP的未來主要受其核心,ZendEngine控制。PHP5將包含新一代的ZendEngine2.0。請訪問其網站以獲取更多關于該引擎的信息。
語言特點
開源免費
PHP是一個受眾大并且擁有眾多開發者的開源軟件項目,Linux+Nginx+Mysql+PHP是它的經典安裝部署方式,相關的軟件全部都是開源免費的,所以使用PHP可以節約大量的正版授權費用。不過PHP作為一個開源軟件,它缺乏大型科技公司的支持背景,網絡上對它的唱衰也是經久不衰,不過它的持續迭代和性能持續增強的現實卻是鼓舞人心的,PHP社區用實際行動給予各種質疑強有力的回擊。
快捷高效
PHP的內核是C語言編寫的基礎好效率高,可以用C語言開發高性能的擴展組件;PHP的核心包含了數量超過1000的內置函數,功能應有盡有很全面,開箱即用程序代碼簡潔;PHP數組支持動態擴容,支持以數字、字符串或者混合鍵名的關聯數組,能大幅提高開發效率;PHP是一門弱類型語言,程序編譯通過率高,相對其他強類型語言開發效率快;PHP天然熱部署,在php-fpm運行模式下代碼文件覆蓋即完成熱部署;PHP經過20多年的發展,在互聯網上可以搜到海量的參考資料供參考學習。
性能提升
PHP版本越高它的整體性能越高,根據官方介紹,PHP7.0.0對比PHP5.6性能就提升了2倍,PHP7.4已經比PHP7.0快了約30%,PHP8.0在性能上又相對PHP7.4大約改進了10%。PHP8.0引入了JIT編譯器特性,同時加入多種新的語言功能,例如命名參數、聯合類型、注解、ConstructorPropertyPromotion、match表達式、nullsafe運算符以及對類型系統、錯誤處理和一致性的改進。PHP擁有自己的核心開發團隊,保持5年發布一個大版本、1個月發布2個小版本的頻率,最新的版本是PHP8.08。PHP7.0.0[16]發布于2023-12-03,此版本下最新版本是PHP7.4.21(發布日期:2023-07-01),PHP8.0.0發布于2023-11-26,此版本下最新版本是PHP8.0.8(發布日期:2023-07-01)。
跨平臺
每個平臺都有對應的php解釋器版本,指針對不同平臺均編譯出目標平臺的二進制碼(PHP解釋器),php開發的程序可以不經修改運行在windows、linux、unix等多個操作系統上。
常駐內存
php-cli模式下可以實現程序常駐內存,各種變量和數據庫連接都能長久保存在內存[9]實現資源復用,比較常用的做法是結合swoole組件編寫cli框架。
頁面生命周期
在php-fpm模式下,所有的變量都是頁面級的,無論是全局變量還是類的靜態成員,都會在頁面執行完畢后被清空,對程序員水平要求低,占用內存非常少,特別適合中小型系統的開發。
參考框架
(一)WordPress內容管理系統(CMS)
功能強大、擴展性強,易于擴充功能;搭建的博客對seo搜索引擎友好,收錄快排名靠前;網站上主題多,各色各樣應有盡有;有強大的社區支持,有上千萬的開發者貢獻和審查。
(二)Hyperf
Hyperf是一個基于Swoole高性能、高靈活性的漸進式PHP協程框架,內置協程服務器及大量常用的組件,性能較傳統基于PHP-FPM的框架有質的提升,提供超高性能的同時,也保持著極其靈活的可擴展性,標準組件均基于PSR標準實現,基于強大的依賴注入設計,保證了絕大部分組件或類都是可替換與可復用的。
(三)ThinkPHP
ThinkPHP是一個快速、兼容而且簡單的輕量級國產PHP開發框架,最早誕生于2023年初,遵循Apache2開源協議發布。秉承簡潔實用、出色的性能和至簡的代碼、注重易用性。并且擁有眾多原創功能和特性,在社區團隊的積極參與下,在易用性、擴展性和性能方面不斷優化和改進。
(四)Drupal
Drupal誕生于2000年,是一個基于PHP語言編寫的開發型CMF(內容管理框架),即:CMS+framework。Drupal的架構由三大部分組成:內核、模塊、主題。三者通過Hook機制緊密的聯系起來。可自由配置,能支持從個人博客到大型社區驅動的網站等各種不同應用的網站項目。
(五)easyswoole
EasySwoole是一款常駐內存型的國產分布式swoole框架,支持同時混合監聽HTTP、WebSocket、自定義TCP、UDP協議,且擁有豐富的組件,例如協程連接池、協程Kafka客戶端、協程ElasticSearch客戶端、、協程Redis客戶端、協程自定義隊列、協程Memcached客戶端、協程HTTP客戶端、Crontab定時器等。
(六)Laravel
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論