亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

php語言

PHP語言發(fā)展歷程

時間:2023-08-29 16:17:48 php語言 我要投稿
  • 相關推薦

PHP語言發(fā)展歷程

  PHP 繼承自一個老的工程,名叫 PHP/FI。PHP/FI 在 1995 年由 Rasmus Lerdorf 創(chuàng)建,最初只是一套簡單的 Perl 腳本,用來跟蹤訪問他主頁的人們的信息。下面是小編幫大家整理的PHP語言發(fā)展歷程,希望對大家有所幫助。

  PHP語言發(fā)展歷史

  1、1994年, Rasmus Lerdorf 開始計劃發(fā)展PHP,并在1995年以Personal Home Page Tools對外發(fā)表第一個版本。在這早期的版本中,提供了訪客留言本、訪客計數(shù)器等簡單的功能。

  2、1995年,第二版的PHP問市,定名為 PHP/FI(Form Interpreter)。PHP/FI并加入了mSQL的支持,自此奠定了PHP在動態(tài)網(wǎng)頁開發(fā)上的影響力。

  3、1996 年底,有15,000個Web網(wǎng)站使用PHP/FI。

  4、1997年,使用 PHP/FI 的Web網(wǎng)站成長到超過50,000個。Zeev Suraski 及Andi Gutmans加入了開發(fā)小組,開始了第三版的開發(fā)計劃,從此PHP成為了真正意義上的開源項目。

  5、1998年6月,PHP.net發(fā)布了PHP 3.0。在這一版本中PHP可以跟Apache服務器緊密地結合,幾乎可以支持所有主流與非主流數(shù)據(jù)庫;而且它擁有非常高的執(zhí)行效率,這些優(yōu)勢使1999年使用 PHP的網(wǎng)站超過了150,000 個。

  6、現(xiàn)在PHP5.0版本強化更多的功能。首先,完全實現(xiàn)面向對象,提供名為PHP兼容模式的功能。其次是XML功能,PHP5.0版本支持可直觀地訪問XML數(shù)據(jù)、名為SimpleXML的XML處理用界面。同時還強化了XML Web服務支持,而且標準支持SOAP擴展模塊。數(shù)據(jù)庫方面,PHP新版本提供旨在訪問MySQL的新界面--MySQLi。除此前的界面外,還可以使用面向對象界面和預處理語句(Prepared Statement)等MySQL的新功能。另外,PHP5.0上還捆綁有小容量RDBMS--SQLite。

  PHP 繼承自一個老的工程,名叫 PHP/FI。PHP/FI 在 1995 年由 Rasmus Lerdorf 創(chuàng)建,最初只是一套簡單的 Perl 腳本,用來跟蹤訪問他主頁的人們的信息。它給這一套腳本取名為Personal Home Page Tools。隨著更多功能需求的增加,Rasmus 寫了一個更大的 C 語言的實現(xiàn),它可以訪問數(shù)據(jù)庫,可以讓用戶開發(fā)簡單的動態(tài) Web 程序。Rasmus 發(fā)布了 PHP/FI 的源代碼,以便每個人都可以使用它,同時大家也可以修正它的 Bug 并且改進它的源代碼。

  PHP/FI,一個專為個人主頁/表單提供解釋程序的程序,已經(jīng)包含了今天 PHP 的一些基本功能。它有著 Perl 樣式的變量,自動解釋表單變量,并可以嵌入 HTML。語法本身與 Perl 很相似,但是它很有限,很簡單,還稍微有些不協(xié)調(diào)。

  到1997年,PHP/FI 2.0,也就是它的 C 語言實現(xiàn)的第二版在全世界已經(jīng)有幾千個用戶(估計)和大約 50,000 個域名安裝,大約是 Internet 所有域名的 1%。但是那時只有幾個人在為該工程撰寫少量當代碼,它仍然只是一個人的工程。

  PHP/FI 2.0 在經(jīng)歷了數(shù)個 beta 版本的發(fā)布后于 1997 年 11 月發(fā)布了官方正式版本。不久,PHP 3.0 的第一個 alpha 版本的發(fā)布,PHP 從此走向了成功。

  PHP 3

  PHP 3.0 是類似于當今 PHP 語法結構的第一個版本。Andi Gutmans 和 Zeev Suraski 在為一所大學的項目中開發(fā)電子商務程序時發(fā)現(xiàn) PHP/FI 2.0 功能明顯不足,于是他們重寫了代碼。這就是 PHP 3.0。經(jīng)過Andi,Rasmus 和 Zeev 一系列的努力,考慮到 PHP/FI 已存在的用戶群,他們決定聯(lián)合發(fā)布 PHP 3.0 作為 PHP/FI 2.0 的官方后繼版本。而 PHP/FI 2.0 的進一步開發(fā)幾乎終止了。

  PHP 3.0 的一個最強大的功能是它的可擴展性。除了給最終用戶提供數(shù)據(jù)庫、協(xié)議和 API 的基礎結構,它的可擴展性還吸引了大量的開發(fā)人員加入并提交新的模塊。后來證實,這是 PHP 3.0 取得巨大成功的關鍵。PHP 3.0 中的其它關鍵功能包括面向對象的支持和更強大和協(xié)調(diào)的語法結構。

  這個全新的語言伴隨著一個新的名稱發(fā)布。它從 PHP/FI 2.0 的名稱中移去了暗含本語言只限于個人使用的部分。它被命名為簡單的縮寫PHP。這是一種遞歸的縮寫,它的全稱是PHP: Hypertext Preprocessor。

  1998 年末,PHP 的安裝人數(shù)幾近 10,000,有大約 100,000 個網(wǎng)站報告他們使用了 PHP。在 PHP 3.0 的頂峰,Internet 上 10% 的 Web 服務器上都安裝了它。

  約九個月的公開測試后,官方于1998年6月正式發(fā)布 PHP 3.0。

  PHP 4

  1998 年的冬天,PHP 3.0 官方發(fā)布不久,Andi Gutmans 和 Zeev Suraski 開始重新編寫 PHP 代碼。設計目標是增強復雜程序運行時的性能和 PHP 自身代碼的模塊性。PHP 3.0 的新功能和廣泛的第三方數(shù)據(jù)庫、API的支持使得這樣程序的編寫成為可能,但是 PHP 3.0 沒有高效處理如此復雜程序的能力。

  新的被稱為Zend Engine(這是 Zeev 和 Andi 的縮寫)的引擎,成功的實現(xiàn)了設計目標,并在 1999 年中期首次引入 PHP。基于該引擎并結合了更多新功能的 PHP 4.0,在 PHP 3.0 發(fā)布兩年后,于2000年5月發(fā)布了官方正式版本。除了更高的性能以外,PHP 4.0 還包含了其它一些關鍵功能,比如:支持更多的 Web 服務器;HTTP Sessions 支持;輸出緩存(output buffering);更安全的處理用戶輸入的方法;一些新的語言結構。

  PHP 4 是當前 PHP 的最新版本。修改和增強 Zend Engine 以使 PHP 5.0 整合新功能的工作已經(jīng)開始。

  今天,已經(jīng)有 10,000 名開發(fā)人員(估計)和幾百萬網(wǎng)站報告已安裝了 PHP,占整個 Internet 域名的 20%。

  PHP 的開發(fā)小組有很多優(yōu)秀的開發(fā)人員,同時還有大量的優(yōu)秀人才在進行 PHP 相關工程的開發(fā)工作,如 PEAR 和 PHP 文檔的工程。

  PHP 5

  PHP 的未來主要受其核心,Zend Engine 控制。PHP 5 將包含新一代的 Zend Engine 2.0。請訪問其網(wǎng)站以獲取更多關于該引擎的信息。

  語言特點

  開源免費

  PHP是一個受眾大并且擁有眾多開發(fā)者的開源軟件項目,Linux + Nginx + Mysql + PHP是它的經(jīng)典安裝部署方式,相關的軟件全部都是開源免費的,所以使用PHP可以節(jié)約大量的正版授權費用。不過PHP作為一個開源軟件,它缺乏大型科技公司的支持背景,網(wǎng)絡上對它的唱衰也是經(jīng)久不衰,不過它的持續(xù)迭代和性能持續(xù)增強的現(xiàn)實卻是鼓舞人心的,PHP社區(qū)用實際行動給予各種質疑強有力的回擊。

  快捷高效

  PHP的內(nèi)核是C語言編寫的基礎好效率高,可以用C語言開發(fā)高性能的擴展組件;PHP的核心包含了數(shù)量超過1000的內(nèi)置函數(shù),功能應有盡有很全面,開箱即用程序代碼簡潔;PHP數(shù)組支持動態(tài)擴容,支持以數(shù)字、字符串或者混合鍵名的關聯(lián)數(shù)組,能大幅提高開發(fā)效率;PHP是一門弱類型語言,程序編譯通過率高,相對其他強類型語言開發(fā)效率快;PHP天然熱部署,在php-fpm運行模式下代碼文件覆蓋即完成熱部署;PHP經(jīng)過20多年的發(fā)展,在互聯(lián)網(wǎng)上可以搜到海量的參考資料供參考學習。

  性能提升

  PHP版本越高它的整體性能越高,根據(jù)官方介紹,PHP7.0.0對比PHP5.6性能就提升了2倍,PHP7.4已經(jīng)比PHP7.0快了約30%,PHP8.0在性能上又相對PHP7.4大約改進了10%。PHP 8.0 引入了 JIT編譯器特性,同時加入多種新的語言功能,例如命名參數(shù)、聯(lián)合類型、注解、Constructor Property Promotion、match 表達式、nullsafe 運算符以及對類型系統(tǒng)、錯誤處理和一致性的改進。PHP擁有自己的核心開發(fā)團隊,保持5年發(fā)布一個大版本、1個月發(fā)布2個小版本的頻率,最新的版本是PHP8.08。PHP 7.0.0[16]發(fā)布于2015-12-03,此版本下最新版本是PHP 7.4.21(發(fā)布日期:2021-07-01),PHP 8.0.0發(fā)布于2020-11-26,此版本下最新版本是PHP 8.0.8(發(fā)布日期:2021-07-01)。

  跨平臺

  每個平臺都有對應的php解釋器版本,指針對不同平臺均編譯出目標平臺的二進制碼(PHP解釋器),php開發(fā)的程序可以不經(jīng)修改運行在windows、linux、unix等多個操作系統(tǒng)上。

  常駐內(nèi)存

  php-cli模式下可以實現(xiàn)程序常駐內(nèi)存,各種變量和數(shù)據(jù)庫連接都能長久保存在內(nèi)存[9]實現(xiàn)資源復用,比較常用的做法是結合swoole組件編寫cli框架。

  頁面生命周期

  在php-fpm模式下,所有的變量都是頁面級的,無論是全局變量還是類的靜態(tài)成員,都會在頁面執(zhí)行完畢后被清空,對程序員水平要求低,占用內(nèi)存非常少,特別適合中小型系統(tǒng)的開發(fā)。

  參考框架

 。ㄒ唬¦ordPress內(nèi)容管理系統(tǒng)(CMS)

  功能強大、擴展性強,易于擴充功能;搭建的博客對seo搜索引擎友好,收錄快排名靠前;網(wǎng)站上主題多,各色各樣應有盡有;有強大的社區(qū)支持,有上千萬的開發(fā)者貢獻和審查。

 。ǘ〩yperf

  Hyperf 是一個基于Swoole 高性能、高靈活性的漸進式 PHP 協(xié)程框架,內(nèi)置協(xié)程服務器及大量常用的組件,性能較傳統(tǒng)基于PHP-FPM 的框架有質的提升,提供超高性能的同時,也保持著極其靈活的可擴展性,標準組件均基于 PSR 標準實現(xiàn),基于強大的依賴注入設計,保證了絕大部分組件或類都是 可替換 與 可復用 的。

 。ㄈ㏕hinkPHP

  ThinkPHP是一個快速、兼容而且簡單的輕量級國產(chǎn)PHP開發(fā)框架,最早誕生于2006年初,遵循Apache2開源協(xié)議發(fā)布。秉承簡潔實用、出色的性能和至簡的代碼、注重易用性。并且擁有眾多原創(chuàng)功能和特性,在社區(qū)團隊的積極參與下,在易用性、擴展性和性能方面不斷優(yōu)化和改進。

 。ㄋ模〥rupal

  Drupal誕生于2000年 ,是一個基于PHP語言編寫的開發(fā)型CMF(內(nèi)容管理框架),即:CMS+ framework。Drupal的架構由三大部分組成:內(nèi)核、模塊、主題。三者通過Hook機制緊密的聯(lián)系起來?勺杂膳渲,能支持從個人博客到大型社區(qū)驅動的網(wǎng)站等各種不同應用的網(wǎng)站項目。

  (五)easyswoole

  EasySwoole是一款常駐內(nèi)存型的國產(chǎn)分布式swoole框架,支持同時混合監(jiān)聽HTTP、WebSocket、自定義TCP、UDP協(xié)議,且擁有豐富的組件,例如協(xié)程 連接池、協(xié)程Kafka客戶端、協(xié)程ElasticSearch客戶端、、協(xié)程Redis客戶端、協(xié)程自定義隊列、 協(xié)程Memcached客戶端、協(xié)程HTTP客戶端、Crontab定時器等。

 。㎜aravel

  Laravel是一套簡潔、優(yōu)雅的PHP Web開發(fā)框架(PHP Web Framework)。它可以讓你從面條一樣雜亂的代碼中解脫出來;它可以幫你構建一個不錯的網(wǎng)絡APP,而且每行代碼都可以簡潔、富于表達力。

 。ㄆ撸〤akePHP

  CakePHP 設計層面很優(yōu)雅,沒有自帶多余的 library,所有的功能都是純粹的框架,執(zhí)行效率還不錯。

 。ò耍﹊mi

  它可以運行在 PHP-FPM、Swoole、Workerman 多種容器環(huán)境下

【PHP語言發(fā)展歷程】相關文章:

php的發(fā)展歷程03-29

php語言發(fā)展歷史11-18

Php語言的發(fā)展前景怎么樣11-17

PHP語言的簡介11-30

什么是php語言03-17

php語言簡介12-03

php語言的優(yōu)勢12-03

PHP語言的優(yōu)缺點12-02

如何學習php語言12-02