- 相關推薦
PHP語言發展歷程
PHP 繼承自一個老的工程,名叫 PHP/FI。PHP/FI 在 1995 年由 Rasmus Lerdorf 創建,最初只是一套簡單的 Perl 腳本,用來跟蹤訪問他主頁的人們的信息。下面是小編幫大家整理的PHP語言發展歷程,希望對大家有所幫助。
PHP語言發展歷史
1、1994年, Rasmus Lerdorf 開始計劃發展PHP,并在1995年以Personal Home Page Tools對外發表第一個版本。在這早期的版本中,提供了訪客留言本、訪客計數器等簡單的功能。
2、1995年,第二版的PHP問市,定名為 PHP/FI(Form Interpreter)。PHP/FI并加入了mSQL的支持,自此奠定了PHP在動態網頁開發上的影響力。
3、1996 年底,有15,000個Web網站使用PHP/FI。
4、1997年,使用 PHP/FI 的Web網站成長到超過50,000個。Zeev Suraski 及Andi Gutmans加入了開發小組,開始了第三版的開發計劃,從此PHP成為了真正意義上的開源項目。
5、1998年6月,PHP.net發布了PHP 3.0。在這一版本中PHP可以跟Apache服務器緊密地結合,幾乎可以支持所有主流與非主流數據庫;而且它擁有非常高的執行效率,這些優勢使1999年使用 PHP的網站超過了150,000 個。
6、現在PHP5.0版本強化更多的功能。首先,完全實現面向對象,提供名為PHP兼容模式的功能。其次是XML功能,PHP5.0版本支持可直觀地訪問XML數據、名為SimpleXML的XML處理用界面。同時還強化了XML Web服務支持,而且標準支持SOAP擴展模塊。數據庫方面,PHP新版本提供旨在訪問MySQL的新界面--MySQLi。除此前的界面外,還可以使用面向對象界面和預處理語句(Prepared Statement)等MySQL的新功能。另外,PHP5.0上還捆綁有小容量RDBMS--SQLite。
PHP 繼承自一個老的工程,名叫 PHP/FI。PHP/FI 在 1995 年由 Rasmus Lerdorf 創建,最初只是一套簡單的 Perl 腳本,用來跟蹤訪問他主頁的人們的信息。它給這一套腳本取名為Personal Home Page Tools。隨著更多功能需求的增加,Rasmus 寫了一個更大的 C 語言的實現,它可以訪問數據庫,可以讓用戶開發簡單的動態 Web 程序。Rasmus 發布了 PHP/FI 的源代碼,以便每個人都可以使用它,同時大家也可以修正它的 Bug 并且改進它的源代碼。
PHP/FI,一個專為個人主頁/表單提供解釋程序的程序,已經包含了今天 PHP 的一些基本功能。它有著 Perl 樣式的變量,自動解釋表單變量,并可以嵌入 HTML。語法本身與 Perl 很相似,但是它很有限,很簡單,還稍微有些不協調。
到1997年,PHP/FI 2.0,也就是它的 C 語言實現的第二版在全世界已經有幾千個用戶(估計)和大約 50,000 個域名安裝,大約是 Internet 所有域名的 1%。但是那時只有幾個人在為該工程撰寫少量當代碼,它仍然只是一個人的工程。
PHP/FI 2.0 在經歷了數個 beta 版本的發布后于 1997 年 11 月發布了官方正式版本。不久,PHP 3.0 的第一個 alpha 版本的發布,PHP 從此走向了成功。
PHP 3
PHP 3.0 是類似于當今 PHP 語法結構的第一個版本。Andi Gutmans 和 Zeev Suraski 在為一所大學的項目中開發電子商務程序時發現 PHP/FI 2.0 功能明顯不足,于是他們重寫了代碼。這就是 PHP 3.0。經過Andi,Rasmus 和 Zeev 一系列的努力,考慮到 PHP/FI 已存在的用戶群,他們決定聯合發布 PHP 3.0 作為 PHP/FI 2.0 的官方后繼版本。而 PHP/FI 2.0 的進一步開發幾乎終止了。
PHP 3.0 的一個最強大的功能是它的可擴展性。除了給最終用戶提供數據庫、協議和 API 的基礎結構,它的可擴展性還吸引了大量的開發人員加入并提交新的模塊。后來證實,這是 PHP 3.0 取得巨大成功的關鍵。PHP 3.0 中的其它關鍵功能包括面向對象的支持和更強大和協調的語法結構。
這個全新的語言伴隨著一個新的名稱發布。它從 PHP/FI 2.0 的名稱中移去了暗含本語言只限于個人使用的部分。它被命名為簡單的縮寫PHP。這是一種遞歸的縮寫,它的全稱是PHP: Hypertext Preprocessor。
1998 年末,PHP 的安裝人數幾近 10,000,有大約 100,000 個網站報告他們使用了 PHP。在 PHP 3.0 的頂峰,Internet 上 10% 的 Web 服務器上都安裝了它。
約九個月的公開測試后,官方于1998年6月正式發布 PHP 3.0。
PHP 4
1998 年的冬天,PHP 3.0 官方發布不久,Andi Gutmans 和 Zeev Suraski 開始重新編寫 PHP 代碼。設計目標是增強復雜程序運行時的性能和 PHP 自身代碼的模塊性。PHP 3.0 的新功能和廣泛的第三方數據庫、API的支持使得這樣程序的編寫成為可能,但是 PHP 3.0 沒有高效處理如此復雜程序的能力。
新的被稱為Zend Engine(這是 Zeev 和 Andi 的縮寫)的引擎,成功的實現了設計目標,并在 1999 年中期首次引入 PHP;谠撘娌⒔Y合了更多新功能的 PHP 4.0,在 PHP 3.0 發布兩年后,于2000年5月發布了官方正式版本。除了更高的性能以外,PHP 4.0 還包含了其它一些關鍵功能,比如:支持更多的 Web 服務器;HTTP Sessions 支持;輸出緩存(output buffering);更安全的處理用戶輸入的方法;一些新的語言結構。
PHP 4 是當前 PHP 的最新版本。修改和增強 Zend Engine 以使 PHP 5.0 整合新功能的工作已經開始。
今天,已經有 10,000 名開發人員(估計)和幾百萬網站報告已安裝了 PHP,占整個 Internet 域名的 20%。
PHP 的開發小組有很多優秀的開發人員,同時還有大量的優秀人才在進行 PHP 相關工程的開發工作,如 PEAR 和 PHP 文檔的工程。
PHP 5
PHP 的未來主要受其核心,Zend Engine 控制。PHP 5 將包含新一代的 Zend Engine 2.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%。PHP 8.0 引入了 JIT編譯器特性,同時加入多種新的語言功能,例如命名參數、聯合類型、注解、Constructor Property Promotion、match 表達式、nullsafe 運算符以及對類型系統、錯誤處理和一致性的改進。PHP擁有自己的核心開發團隊,保持5年發布一個大版本、1個月發布2個小版本的頻率,最新的版本是PHP8.08。PHP 7.0.0[16]發布于2015-12-03,此版本下最新版本是PHP 7.4.21(發布日期:2021-07-01),PHP 8.0.0發布于2020-11-26,此版本下最新版本是PHP 8.0.8(發布日期:2021-07-01)。
跨平臺
每個平臺都有對應的php解釋器版本,指針對不同平臺均編譯出目標平臺的二進制碼(PHP解釋器),php開發的程序可以不經修改運行在windows、linux、unix等多個操作系統上。
常駐內存
php-cli模式下可以實現程序常駐內存,各種變量和數據庫連接都能長久保存在內存[9]實現資源復用,比較常用的做法是結合swoole組件編寫cli框架。
頁面生命周期
在php-fpm模式下,所有的變量都是頁面級的,無論是全局變量還是類的靜態成員,都會在頁面執行完畢后被清空,對程序員水平要求低,占用內存非常少,特別適合中小型系統的開發。
參考框架
。ㄒ唬¦ordPress內容管理系統(CMS)
功能強大、擴展性強,易于擴充功能;搭建的博客對seo搜索引擎友好,收錄快排名靠前;網站上主題多,各色各樣應有盡有;有強大的社區支持,有上千萬的開發者貢獻和審查。
。ǘ〩yperf
Hyperf 是一個基于Swoole 高性能、高靈活性的漸進式 PHP 協程框架,內置協程服務器及大量常用的組件,性能較傳統基于PHP-FPM 的框架有質的提升,提供超高性能的同時,也保持著極其靈活的可擴展性,標準組件均基于 PSR 標準實現,基于強大的依賴注入設計,保證了絕大部分組件或類都是 可替換 與 可復用 的。
。ㄈ㏕hinkPHP
ThinkPHP是一個快速、兼容而且簡單的輕量級國產PHP開發框架,最早誕生于2006年初,遵循Apache2開源協議發布。秉承簡潔實用、出色的性能和至簡的代碼、注重易用性。并且擁有眾多原創功能和特性,在社區團隊的積極參與下,在易用性、擴展性和性能方面不斷優化和改進。
(四)Drupal
Drupal誕生于2000年 ,是一個基于PHP語言編寫的開發型CMF(內容管理框架),即:CMS+ framework。Drupal的架構由三大部分組成:內核、模塊、主題。三者通過Hook機制緊密的聯系起來?勺杂膳渲茫苤С謴膫人博客到大型社區驅動的網站等各種不同應用的網站項目。
。ㄎ澹〆asyswoole
EasySwoole是一款常駐內存型的國產分布式swoole框架,支持同時混合監聽HTTP、WebSocket、自定義TCP、UDP協議,且擁有豐富的組件,例如協程 連接池、協程Kafka客戶端、協程ElasticSearch客戶端、、協程Redis客戶端、協程自定義隊列、 協程Memcached客戶端、協程HTTP客戶端、Crontab定時器等。
(六)Laravel
Laravel是一套簡潔、優雅的PHP Web開發框架(PHP Web Framework)。它可以讓你從面條一樣雜亂的代碼中解脫出來;它可以幫你構建一個不錯的網絡APP,而且每行代碼都可以簡潔、富于表達力。
。ㄆ撸〤akePHP
CakePHP 設計層面很優雅,沒有自帶多余的 library,所有的功能都是純粹的框架,執行效率還不錯。
(八)imi
它可以運行在 PHP-FPM、Swoole、Workerman 多種容器環境下
【PHP語言發展歷程】相關文章:
php的發展歷程03-29
php語言發展歷史11-18
Php語言的發展前景怎么樣11-17
PHP語言的簡介11-30
什么是php語言03-17
php語言簡介12-03
php語言的優勢12-03
PHP語言的優缺點12-02
如何學習php語言12-02