php數據交互
1. php工作流程
PHP是運行與伺服器端的腳本語言,實現了資料庫與網頁之間的數據交互。一個完整的PHP網站系統由以下幾部分組成。
操作系統
網路中的 伺服器也是一台計算機,因此需要操作系統。PHP有著良好的跨平台性,支持windows和Linux等操作系統
web伺服器
當一台計算機中安裝操作系統後,還需要安裝web伺服器才能進行http訪問。常見的web伺服器軟體有Apache、IIS、Nginx等
資料庫
用於網站數據的存儲和管理。PHP支持多種資料庫,包括Mysql、sql server,oracle。db2
PHP軟體
用於解析PHP腳本文件、訪問資料庫等,是運行PHP代碼所必須的軟體。
瀏覽器
是瀏覽網頁的客戶端。由於PHP腳本是在伺服器端運行的,因此通過瀏覽器看到的是經過PHP處理後的html結果。。Zend引擎:Zend整體用純C實現,是PHP的內核部分,他將PHP代碼翻譯(詞法、語法解析等一系列編譯過程)為可執行opcode的處理並實現相應的處理方法、實現了基本的數據結構(如:hashtable、OO)、內存分配機制及管理、提供了相應的api方法供外部調用,是一切的核心,所有的外圍功能均圍繞Zend實現。
2、Extensions:圍繞著Zend引擎,extensions通過組件式的方式提供各種基礎服務,我們常見的各種內置函數(array系列)、標准庫等都是通過extension來實現,用戶也可以根據需要實現自己的extension的典型應用)。
3、Sapi:Sapi全稱Server Application Programming Interface,也就是服務端應用編程介面,Sapi通過一系列鉤子函數,使得PHP可以和外圍交互數據,這是PHP非常優雅和成功的設計,通過sapi成功的將PHP本身和上層應用解耦隔離,PHP可以不再考慮如何針對不同應用進行兼容,而應用本身也可以針對自己的特點實現不同的處理方式。
4、上層應用:這就是我們平時編寫的PHP程序,通過不同的spai方式得到各種各樣的應用模式,如何通過webserver實現web應用、在命令行下已腳本方式運行等等。