新聞中心

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的克東網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
PHP語(yǔ)言是最受歡迎的 Web 開發(fā)語(yǔ)言之一。它以學(xué)習(xí)簡(jiǎn)單、開發(fā)快速、性能穩(wěn)定而備受 Web 開發(fā)人員的青睞。不僅使用人數(shù)眾多,而且有強(qiáng)大的社區(qū)支持,使得無(wú)論是用 PHP 開發(fā) Web 應(yīng)用,還是學(xué)習(xí)PHP語(yǔ)言,都非常迅速。
PHP 的發(fā)展歷史
1994 年,拉斯姆斯·勒多夫(Rasmus Lerdorf)創(chuàng)造了 PHP,這個(gè)時(shí)候的 PHP 只是用 Perl 語(yǔ)言編寫的一系列 CGI 腳本,用于跟蹤他在線簡(jiǎn)歷的訪問情況,統(tǒng)計(jì)他自己網(wǎng)站的訪問者。
勒多夫把這些 CGI 腳本命名為“Personal Home Page Tools”。這里我們姑且將之稱為 PHP1 吧!這個(gè)早期的 PHP Tools 并不是一門語(yǔ)言,只是一些工具,提供基本的變量,并使用嵌入式 HTML 句法自動(dòng)處理表單變量。
圖:PHP之父Rasmus Lerdorf
PHP2
由于勒多夫?qū)懙倪@個(gè)小程序輕巧且簡(jiǎn)便,吸引了很多人的關(guān)注,1995 年,勒多夫發(fā)布了 PHP/FI 2.0 版本,該版本不僅可以做到訪問數(shù)據(jù)庫(kù),還能嵌入到 HTML 中動(dòng)態(tài)處理數(shù)據(jù)。
新版本的 PHP 吸引來(lái)了很多的程序開發(fā)者,其中包括 Zeev Suraski(澤埃夫·蘇拉斯基)和 Andi Gutmans(安迪·古曼茲),他們后來(lái)加入到了 PHP3 的開發(fā)當(dāng)中。
PHP3
在 1997 年中旬,開始了 PHP 第三版的開發(fā)計(jì)劃, Zeev Suraski 和 Andi Gutmans 加入到了開發(fā)小組中。1998 年末,PHP3 的第一個(gè)官方正式版發(fā)行,其特點(diǎn)是具有更好的執(zhí)行效果和更清晰的結(jié)構(gòu)。此外,該版本最強(qiáng)大的地方在于它的可擴(kuò)展性,這一特點(diǎn)吸引了大量的開發(fā)人員加入并提交了一系列新的 PHP 擴(kuò)展模塊。
新版本的 PHP 有了一個(gè)全新的名字“PHP: Hypertext Preprocessor”,這標(biāo)志著 PHP 不再僅僅是個(gè)人網(wǎng)頁(yè)的小工具。
PHP4
在 PHP3 發(fā)布后不久,Zeev Suraski 和 Andi Gutmans 就開始投入到 PHP4 的開發(fā)當(dāng)中,主要目標(biāo)是增強(qiáng)程序運(yùn)行性能和 PHP 自身的模塊性。
新的 PHP4 采用“Zend”引擎作為核心,相同的 PHP 腳本在新版本中運(yùn)行比舊版本性能提升了近十倍。
在 2000 年,PHP4 正式發(fā)布,主要增加了以下特性:
- 各種 web 服務(wù)器的支持;
- 豐富的數(shù)組操作函數(shù);
- 完整的會(huì)話機(jī)制;
- 對(duì)輸出緩存的支持;
- 增加了對(duì)類和對(duì)象的支持,這也是 PHP 支持面向?qū)ο蟮碾r形。
PHP5
盡管 PHP 發(fā)展勢(shì)頭迅猛,但相比較于 Java 語(yǔ)言來(lái)說(shuō),還有很多問題,比如面向?qū)ο蟮闹С植粔蛲晟?,無(wú)法捕獲異常(Exception)等,這導(dǎo)致多年以來(lái) PHP 一直被人們認(rèn)為是一門面向過(guò)程的語(yǔ)言。
2004 年 7 月,PHP5 正式發(fā)布,這標(biāo)志著 PHP 進(jìn)入到了一個(gè)全新的時(shí)代。并且往后多年,PHP 一直在 5 這個(gè)版本上迭代,這也是 PHP 歷時(shí)最長(zhǎng)的一個(gè)大版本。
PHP5 的核心采用的是第二代 Zend 引擎,并引入了對(duì) PECL 模塊的支持,最重要的是PHP5全面支持了面向?qū)ο髾C(jī)制。
由于 PHP5 小版本眾多,下表中列出了各版本的發(fā)行年份與加入的新特性:
| PHP版本 | 發(fā)行年份 | 新特性 |
|---|---|---|
| 5.0 | 2004-07-13 | — |
| 5.1 | 2005-11-24 | — |
| 5.2 | 2006-11-02 | — |
| 5.3 | 2009-06-30 | 引入了命名空間、閉包和匿名函數(shù) |
| 5.4 | 2012-03-01 | 引入性狀(trait)、內(nèi)置 web 服務(wù)器 |
| 5.5 | 2013-06-20 | 引入 PHP 生成器(generator)、MySQL擴(kuò)展被廢棄,可使用 MySQLi 或者 PDO |
| 5.6 | 2014-08-28 | — |
PHP7
2015 年 12 月 3 日,PHP7 問世了,這是 PHP 的一次質(zhì)的飛躍。PHP7 不僅修復(fù)了大量 BUG ,還新增了一些功能和語(yǔ)法糖。這些變化涉及到了核心包、GD 庫(kù)、PDO、ZIP、ZLIB 等熟悉和不熟悉的核心功能與擴(kuò)展包。
PHP7 移除了已經(jīng)被廢棄的函數(shù),如 mysql_ 系列函數(shù)(在 PHP5.5 被廢棄,在 PHP7 被刪除),同時(shí) PHP7 的性能是 PHP5.6 的兩倍。
PHP 的發(fā)展趨勢(shì)
PHP 從誕生到現(xiàn)在已經(jīng)有 20 多年的歷史了,從 Web 時(shí)代興起到移動(dòng)互聯(lián)網(wǎng)退潮,互聯(lián)網(wǎng)領(lǐng)域各種編程語(yǔ)言和技術(shù)層出不窮,Node.js、Golang、Python 等不斷地在挑戰(zhàn) PHP 的地位。這些技術(shù)的推動(dòng)者非常熱衷于唱衰 PHP,PHP 語(yǔ)言的未來(lái)在哪里?PHP 程序員當(dāng)如何應(yīng)對(duì)未來(lái)的變革?
作為老牌的 Web 后端編程語(yǔ)言,PHP 在全球市場(chǎng)占有率是非常高的,僅次于 Java ,從各個(gè)招聘網(wǎng)站的數(shù)據(jù)上來(lái)看 PHP 開發(fā)的職位非常多,薪資水平也非常不錯(cuò)。
實(shí)際上在中小企業(yè)、互聯(lián)網(wǎng)創(chuàng)業(yè)公司中,PHP 的市場(chǎng)地位是高于 Java 的。Java 在超大型企業(yè)、傳統(tǒng)軟件行業(yè)、金融領(lǐng)域優(yōu)勢(shì)更大。目前來(lái)看 Node.js、Golang、Python、Ruby 等語(yǔ)言還難以企及 PHP 和 Java。
PHP 語(yǔ)言之所以能有今天的地位,得益于 PHP 語(yǔ)言設(shè)計(jì)者一直遵從實(shí)用主義,將技術(shù)的復(fù)雜性隱藏在底層。
PHP 語(yǔ)言入門簡(jiǎn)單,容易掌握,程序健壯性好,不容易出現(xiàn)像 Java、C++ 等其他語(yǔ)言那樣復(fù)雜的問題,如內(nèi)存泄漏和 Crash ,跟蹤調(diào)試相對(duì)輕松很多。
PHP 官方提供的標(biāo)準(zhǔn)庫(kù)非常強(qiáng)大,各種功能函數(shù)都能在官方的標(biāo)準(zhǔn)庫(kù)中找到,包括 MySQL、Memcache、Redis、GD 圖形庫(kù)、CURL、XML、JSON 等等,免除了開發(fā)者到處找?guī)斓臒馈?/p>
PHP 的文檔非常棒,每個(gè)函數(shù)都有詳細(xì)的說(shuō)明和使用示例。第三方類庫(kù)和工具、代碼、項(xiàng)目也很豐富。開發(fā)者可以快速、高效地使用 PHP 編寫開發(fā)各類軟件。
到目前為止市面上仍然沒有出現(xiàn)比 PHP 更簡(jiǎn)單易用的編程語(yǔ)言,就連全球著名的網(wǎng)站都在使用 PHP,請(qǐng)看下表:
| 序號(hào) | 網(wǎng)站 | 程序 | OS(系統(tǒng)) | DB(數(shù)據(jù)庫(kù)) |
|---|---|---|---|---|
| 1 | PHP | Linux+Apache | MySql | |
| 2 | Python | 集群(自主研發(fā)) | 集群 | |
| 3 | YouTube | Python | 集群 | 集群 |
| 4 | Yahoo! | PHP | FreeBSD+Apache | MySql |
| 5 | 百度 | PHP | Linux+Apache | 集群 |
| 6 | 維基百科 | PHP | Linux+Apache | MySql |
| 7 | 亞馬遜 | CGI | Linux | Oracle |
| 8 | Windows Live | ASP.NET | Windows+IIS | MsSql |
| 9 | 騰訊QQ | PHP | 集群 | 集群 |
| 10 | 淘寶 | PHP | Linux | Oracle |
| 11 | Blogspot | Python | 集群 | 集群 |
| 12 | Ruby | 未知 | NoSql | |
| 13 | JSP | 未知 | 未知 | |
| 14 | Bing | ASP.NET | Windows+IIS | MsSql |
| 15 | 新浪 | PHP | Linux+Apache | MySql |
| 16 | Яндекс | PHP | 集群 | 集群 |
| 17 | MSN | ASP.NET | Windows+IIS | MsSql |
| 18 | ВКонтакте | PHP | Linux+Apache | MySql |
| 19 | eBay | ASP.NET | Windows+IIS | Oracle |
| 20 | WordPress | PHP | Linux+Apache | MySql |
| 21 | 網(wǎng)易 | JSP | Linux+Apache | Oracle |
| 22 | 新浪微博 | PHP | FreeBSD+Apache | MySql |
| 23 | 微軟 | ASP.NET | Windows+IIS | MsSql |
| 24 | Tumblr | PHP | Linux+Apache | MySql |
| 25 | Ask | ASP.NET | Windows+IIS | MsSql |
| 26 | Hao123 | PHP | Linux+Apache | MySql |
| 27 | xvideos | 未知 | Nginx | Redis |
| 28 | Conduit | C#.NET | Windows+IIS | MsSql |
| 29 | Python | FreeBSD+Apache | MySql | |
| 30 | FC2 | 未知 | 未知 | 未知 |
| 31 | delta-search | Python | 集群(自主研發(fā)) | 集群 |
| 32 | Craigslist | PHP | Linux+Apache | MySql |
| 33 | 天貓 | PHP | Linux+Apache | MySql |
| 34 | Babylon | ColdFusion | Windows+IIS | MsSql |
| 35 | 搜狐網(wǎng) | PHP | Linux+Apache | MySql |
| 36 | PayPal | JSP | 未知 | 未知 |
| 37 | Adobe | AIR | 未知 | 未知 |
| 38 | The Internet Movie Database | ASP.NET | Windows+IIS | MsSql |
| 39 | 蘋果 | 未知 | 未知 | 未知 |
| 40 | BBC Online | ASP.NET | Windows+IIS | Oracle |
| 41 | soso搜搜 | PHP | Linux+Nginx | 未知 |
| 42 | Pornhub | 未知 | 未知 | 未知 |
| 43 | 鳳凰網(wǎng) | PHP | Linux+Apache | MySql |
| 44 | AVG | 未知 | 未知 | 未知 |
| 45 | AOL | JSP | 未知 | 未知 |
| 46 | Blogger | 未知 | 未知 | 未知 |
| 47 | Go | 未知 | 未知 | 未知 |
| 48 | 阿里巴巴 | JSP | Unix+Apache | Oracle |
| 49 | 優(yōu)酷 | PHP | Linux+Apache | MySql |
| 50 | 360安全中心 | PHP | Linux+Apache | MySql |
所以 PHP 的前景還是很廣闊的,與其糾結(jié)于編程語(yǔ)言的選擇,不如好好地深入學(xué)習(xí)使用 PHP 。PHP 的未來(lái)將會(huì)朝著更加企業(yè)化的方向邁進(jìn),并且將更適合大型系統(tǒng)的開發(fā)。
PHP 的應(yīng)用領(lǐng)域
1) WEB 服務(wù)端
PHP 尤其適合網(wǎng)站開發(fā),沒有任何語(yǔ)言可以與其抗衡(從權(quán)威技術(shù)網(wǎng)站 w3techs.com 的統(tǒng)計(jì)來(lái)看,PHP 被 79% 的網(wǎng)站使用)。
當(dāng)然,PHP 的用武之地不僅僅只是在網(wǎng)站開發(fā),在游戲開發(fā)、廣告系統(tǒng)開發(fā)、API接口開發(fā)、移動(dòng)端后臺(tái)開發(fā),內(nèi)部 OA 系統(tǒng)開發(fā)上都能使用 PHP。
如今微信開發(fā)異?;鸨琍HP 同樣是最好的開發(fā)工具,更加上 react native 框架和 Hybrid App 的誕生,PHP 程序員更是可以開發(fā)手機(jī) App 了。
2) 命令行腳本
我們也可以通過(guò)命令行模式來(lái)運(yùn)行 PHP 腳本,這種模式下不需要服務(wù)器的支持或者瀏覽器的觸發(fā),在命令行腳本模式下僅需要 PHP 解析器來(lái)執(zhí)行。通常這種方法被用在 Windows 和 Linux 平臺(tái)下做日常運(yùn)行腳本使用,如某些守護(hù)程序等。當(dāng)然這些腳本也可以用來(lái)處理簡(jiǎn)單的文本。
3) 編寫桌面應(yīng)用程序
對(duì)于開發(fā)有圖形界面的桌面應(yīng)用程序來(lái)說(shuō),PHP 或許不是一種最好的語(yǔ)言,但是如果用戶非常精通 PHP,并且希望在客戶端應(yīng)用程序中使用 PHP 的一些高級(jí)特性,就可以利用 PHP-GTK 來(lái)編寫這些程序。
PHP-GTK 是 PHP 的一個(gè)擴(kuò)展,使用 PHP-GTK 可以創(chuàng)建獨(dú)立的 GUI(用戶圖形界面)應(yīng)用程序,例如 mp3 播放器、文本編輯器、數(shù)據(jù)庫(kù)后臺(tái)等等??梢詮?http://gtk.php.net/ 下載 PHP-GTK。
當(dāng)前標(biāo)題:PHP簡(jiǎn)介,PHP是什么?
網(wǎng)站鏈接:http://www.dlmjj.cn/article/dhoscdi.html


咨詢
建站咨詢
