當前位置:生活全書館 >

綜合知識

> php是如何執行的 php底層原理

php是如何執行的 php底層原理

php底層原理 php是如何執行的

1、PHP動態語言執行過程:拿到一段代碼後,經過詞法解析、語法解析等階段後,源程序會被翻譯成一個個指令(opcodes),然後ZEND虛擬機順次執行這些指令完成操作。PHP本身是用C實現的,因此最終調用的也是C的函數,實際上,我們可以把PHP看做一個C開發的軟件。

2、PHP的4層執行體系:

(1)Zend引擎:Zend整體用純C實現,是PHP的內核部分,他將PHP代碼翻譯(詞法、語法解析等一系列編譯過程)爲可執行opcode的處理並實現相應的處理方法、實現了基本的數據結構(如:hashtable、OO)、內存分配機制及管理、提供了相應的api方法供外部調用,是一切的核心,所有的外圍功能均圍繞Zend實現。

(2)Extensions:圍繞着Zend引擎,extensions透過組件式的方式提供各種基礎服務,我們常見的各種內置函數(array系列)、標準庫等都是透過extension來實現,用戶也可以根據需要實現自己的extension的典型應用)。

(3)Sapi:Sapi全稱ServerApplicationProgrammingInterface,也就是服務端應用編程接口,Sapi透過一系列鉤子函數,使得PHP可以和外圍交互數據,這是PHP非常優雅和成功的設計,透過sapi成功的將PHP本身和上層應用解耦隔離,PHP可以不再考慮如何針對不同應用進行相容,而應用本身也可以針對自己的特點實現不同的處理方式。

(4)上層應用:這就是我們平時編寫的PHP程序,透過不同的spai方式得到各種各樣的應用模式,如何透過webserver實現web應用、在命令行下已腳本方式執行等等。

標籤: 底層 執行 php
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zh-hant/zonghezhishi/x80rn8.html