1. 程式人生 > >php運行機制與原理

php運行機制與原理

數據結構 機制 二進制 純c 轉換 請求 程序 輸出 ont

php運行機制與原理:

PHP總共有三個模塊:內核、Zend引擎、以及擴展層;

1. PHP內核用來處理請求、文件流、錯誤處理等相關操作;

2. Zend引擎(ZE)用以將源文件轉換成機器語言(二進制),然後在虛擬機上運行它;

3. 擴展層是一組函數、類庫和流,PHP使用它們來執行一些特定的操作。比如,我們需要mysql擴展來連接MySQL數據庫;當ZE執行程序時可能會需要連接若幹擴展,這時ZE將控制權交給擴展,等處理完特定任務後再返還;

最後,ZE將程序運行結果返回給PHP內核,它再將結果傳送給SAPI層,最終輸出到瀏覽器上。

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

php運行機制與原理