PHP一種開源通用的電腦手稿語言,他是特別為動態網頁設計的。可以在HTML網頁中嵌入PHP程式,當使用者造訪網頁時,PHP程式碼會在網頁伺服器上解譯,並且產生HTML的輸出,讓訪客可以透過瀏覽器看到網頁內容。
PHP是在1995年問世,原本是由Rasmus Lerdorf為了要維護個人網頁,用C語言開發的一些CGI工具程式集,來取代原先使用的Perl程式。他在1995年6月8日將PHP公開釋出,希望可以透過社群來加速程式開發與除錯,後來經由眾多高手持續修改,以及幾次的重大改寫,它成為我們今日看到的廣泛、成熟的動態網頁語言。
PHP的優勢
PHP的主要競爭者包括Python、Ruby、Node.js、Perl、Microsoft.NET與Java。與它們相比,PHP擁有許多的優勢,如下:
- 效能
- 延展性
- 擁有與不同資料庫系統之間的介面
- 針對許多常見的網頁工作而設計的內建程式庫
- 低成本
- 容易學習與使用
- 強力支援物件導向
- 可攜帶性
- 靈活的開發方式
- 容易取得原始程式
- 容易取得資源與文件
效能
PHP相當快速,你只要使用一台便宜的伺服器,就可以應付每天上百萬次的點閱。它可以處理最小的email格式,也可以應付像Facebook這種大型網站。
延展性
PHP具備 "無共用(share-nothing)"結構。意思就是,你可以有效率且廉價地使用大量伺服器來做水平延展。
資料庫整合
PHP天生就可以連結許多資料庫系統。除了MySQL之外,也可以直接連結PostgreSQL、Oracle、MongoDB、MSSQL與其他資料庫。
內建程式庫
因為PHP的設計是為了在網頁上使用的,它有許多內建的函式可執行許多實用的Web相關任務。你可以即時生成圖像、連結Web服務與其他網路服務、解析XML、傳送email、使用cookie、及產生PDF文件,只要幾行程式就可以辦到。
成本
PHP是開源軟體,它是免費的。隨時可以到 https://www.php.net 免費下載最新版本。
容易學習
PHP的語法是以其他的程式語言為基礎來建構的,主要是C語Perl。所以它容易學習。
支援物件導向
PHP第五版就有設計良好的物件導向功能,到了第七版仍然持續改善它們。
可攜性
PHP可以在許多不同的作業系統上使用,你可以在免費的LINUX、商業的UNIX、OS X、各種版本的Windows上編寫PHP程式。
靈活的開發方式
PHP可讓你按照Model-View-Controller(MVC)等設計模式來輕鬆地實作簡單的工作,你也可以同樣輕鬆地將它運用在大型的應用程式上。
原始程式碼
你可以取得PHP的原始程式碼。PHP和封閉原始碼的商業商品不同,如果你想要修改語言或加入新功能,盡可放手去做。
容易取得支援與文件
PHP引擎的公司Zend Technologies在商業基礎上提供PHP的支援及相關的軟體。PHP的文件與社群都相當成熟,且擁有豐沛的資源,具備大量的共享資訊。
全球網站廣泛使用
PHP在網頁後端的程式語言中,截至2021/7/17,市場占有率高達79.1%。
PHP伺服器端的腳本核心概念
- PHP是在網頁伺服器上解譯與執行的。有別於在使用者機器的網頁瀏覽器上解譯與執行的JavaScript及其他用戶端技術
- PHP程式碼通常被嵌入HTML檔案裡。當你在瀏覽器看原始碼時,只會看到HTML,你看不到任何原始的PHP,因為PHP的解譯器已經執行完腳本,並將它換成HTML的輸出。也就是說,我們可以用PHP來產生任何瀏覽器看的懂的HTML,而瀏覽器根本不需要了解PHP。