PHP
| 中文名 | PHP |
|---|---|
| 英文名 | PHP(PHP: Hypertext Preprocessor) |
| 編程範式 | 多範式:面向對象、指令式、函數式 |
| 設計者 | Rasmus Lerdorf |
| 發行時間 | 1995年[1] |
| 當前版本 | PHP 8.4(2024年11月21日)[2] |
| 類型系統 | 動態類型、弱類型 |
| 主要實現 | Zend Engine |
| 作業系統 | 跨平台 |
| 許可證 | PHP許可證[1] |
| 文件擴展名 | .php、.phtml、.php3、.php4、.php5、.php7、.phps |
PHP(全稱:PHP: Hypertext Preprocessor,遞歸縮寫)是一種開源的通用伺服器端腳本語言,尤其適用於Web開發並可嵌入HTML中使用[3]。PHP的語法借鑑吸收了C語言、Java和Perl等流行計算機語言的特點[1]。PHP最初由Rasmus Lerdorf於1995年開始開發[1],目前由The PHP Group維護[1]。PHP以PHP License作為許可協議[1]。PHP的應用範圍相當廣泛,尤其在網頁程序的開發上,大多運行在網頁伺服器上,通過執行PHP代碼來產生用戶瀏覽的網頁[1]。PHP可以在多數的伺服器和作業系統上執行[1]。根據W3Techs的報告,截至2023年7月,有77.4%的網站使用PHP[1]。
PHP的第一個版本由Rasmus Lerdorf於1994年創建,是一組用C編程語言編寫的簡單通用網關接口(CGI)二進制文件,最初用於追蹤訪問其在線簡歷的人數[4]。
1995年6月,Rasmus Lerdorf發布了PHP工具的原始碼[4]。1995年中期,解析器被重寫並命名為PHP/FI Version 2[4]。PHP/FI 2.0在經歷了數個beta版本的發布後於1997年11月發布了官方正式版本[1]。
PHP 3.0是第一個與現代PHP語法結構相似的版本[4]。它由Andi Gutmans和Zeev Suraski於1997年從頭重寫[4],他們在發現PHP/FI 2.0對於開發電子商務應用功能不足後開始了重寫工作[4]。PHP 3.0於1998年末正式發布[4]。
PHP 4於2000年第二季度發布,其核心採用了Zend Engine[1]。
PHP 5於2004年7月發布,引入了完整的面向對象模型[1]。
2005年,一個由Andrei Zmievski領導的項目啟動,旨在通過嵌入International Components for Unicode(ICU)庫並在內部將文本字符串表示為UTF-16,為PHP帶來原生Unicode支持。由於這會導致語言內部和用戶代碼的重大變化,計劃作為6.0版本發布[4]。然而,PHP 6從未正式發布[4]。
2014年至2015年間,PHP 7作為新的主要版本被開發。其基礎是一個最初稱為PHP下一代(phpng)的分支,由Dmitry Stogov、Xinchen Hui和Nikita Popov編寫,旨在通過重構Zend Engine來優化PHP性能,同時保持幾乎完全的語言兼容性[4]。截至2014年7月14日,WordPress基準測試顯示性能提升近100%[4]。重寫後的Zend Engine被稱為Zend Engine 3[4]。由於PHP 6從未發布,為避免混淆,新版本被命名為PHP 7[4]。PHP 7.0.0於2015年12月正式發布[5]。
PHP 8於2020年11月26日發布[4][6]。這是一個主要版本,包含多項新特性和破壞性變更[4]。主要新特性包括:命名參數、聯合類型、註解(Attributes)、構造器屬性提升、match表達式、nullsafe運算符、即時編譯(JIT)[6]。PHP 8的JIT編譯器可以為某些用例提供顯著的性能提升[4]。
PHP 8.4於2024年11月21日發布[2]。
PHP的主要版本演進如下[1]:
- PHP 1 – 1995年
- PHP 2 – 1995–1997年
- PHP 3 – 1997–2000年
- PHP 4 – 2000年第二季度
- PHP 5 – 2004年7月
- PHP 7 – 2015年12月
- PHP 8 – 2020年11月
PHP的語法大量借鑑自C、Java和Perl[1]。PHP代碼通常嵌入HTML中,通過`<?php ... ?>`標籤進行分隔。
PHP最初是一種動態類型、弱類型的語言[1]。
自PHP 5起,PHP包含了一個完整的對象模型[1]。
PHP主要用於伺服器端腳本,這是其使用最廣泛、最主要的目標領域。PHP可以完成任何CGI程序能夠完成的工作,例如收集表單數據、生成動態網頁、發送/接收Cookie。
PHP的典型應用場景包括:
許多知名的內容管理系統和Web框架均基於PHP構建,包括WordPress、Drupal、Joomla、Laravel、Symfony等。
PHP擁有豐富的擴展庫生態系統。PHP擴展可以通過PECL(PHP Extension Community Library)和PEAR(PHP Extension and Application Repository)等方式獲取。PHP發行包中包含了大多數開發者最常用到的核心擴展庫。
PHP的性能優化主要涉及以下方面:
PHP 8引入的JIT編譯器可以為數學運算等計算密集型用例提供顯著的性能提升[4]。
PHP由The PHP Group維護,這是一個由主要PHP開發者組成的志願者團體[1]。PHP的開發過程公開進行,代碼託管在GitHub上。
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 PHP - 維基百科,自由的百科全書
- ↑ 2.0 2.1 What’s New in PHP 8.4 | Zend
- ↑ 引用錯誤:無效的
<ref>標籤,未定義名稱為wiki-zh的參考文獻內容文字。 - ↑ 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 4.12 4.13 4.14 4.15 4.16 PHP: PHP 及其相關項目的歷史 - Manual
- ↑ PHP 7.0.0 正式發布,速度是 PHP 5.6 的兩倍
- ↑ 6.0 6.1 PHP 8.0正式發布:支持JIT編譯器,性能提升高達3倍