摘要:的整個生命周期被劃分為以下幾個階段模塊初始化階段請求初始化階段執行腳本階段請求關閉階段模塊關閉階段。
PHP的整個生命周期被劃分為以下幾個階段:模塊初始化階段(module startup)、請求初始化階段(request startup)、執行腳本階段(executescript)、請求關閉階段(request shutdown)、模塊關閉階段(module shutdown)。根據不同SAPI的實現,各階段的執行情況會有一些差異,比如命令行模式下,每次執行一個腳本都會完整地經歷這些階段,而FastCgi模式下則在啟動時執行一次模塊初始化,然后各個請求只經歷請求初始化、執行請求腳本、請求關閉幾個階段,在SAPI關閉時經歷模塊關閉階段。
模塊初始化階段
激活SAPI
啟動PHP輸出
初始化垃圾回收器
啟動Zend引擎
啟動內存池
設置一些util函數句柄
設置Zend虛擬機編譯、執行器的函數句柄
分配函數符號表、類符號表、常量符號表
注冊Zend核心擴展
注冊Zend定義的標準常量
注冊$GLOBALS超全局變量的獲取handler
分配php.ini配置的存儲符號表
注冊PHP定義的常量
解析php.ini
映射PHP、Zend核心的php.ini配置
注冊用于獲取 $_GET、$_POST、$_COOKIE、$_SERVER、$_ENV、$_REQUEST、$_FILES 變量的 handler
注冊靜態編譯的擴展
注冊動態加載的擴展
回調各擴展定義的module starup鉤子函數
注冊php.ini中禁用的函數、類
請求初始化階段
激活輸出
激活Zend引擎
重置垃圾回收器
初始化編譯器
初始化執行器
初始化詞法掃描器
激活SAPI
回調各擴展定義的request startup鉤子函數
執行腳本階段
編譯階段
PHP 源代碼
抽象語法樹
opline指令
執行階段
請求關閉階段
flush輸出內容
發送HTTP應答header頭
清理全局變量
關閉編譯器
關閉執行器
模塊關閉階段
進行資源的清理
PHP各模塊的關閉操作
回調各擴展的module shutdown鉤子函數
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29351.html
摘要:的工作原理和生命周期是一門適用于開發的動態語言,它可以說是一個用語言實現的包含大量組件的軟件框架。無論是哪種公眾模式,的工作原理都是一樣的,都是作為一種運行。 PHP的工作原理和生命周期 php是一門適用于web開發的動態語言,它可以說是一個用C語言實現的包含大量組件的軟件框架。那么,php是如何工作的呢?它的生命周期是怎么樣的呢? 表層分析 php是以請求/響應為周期運行服務端應用...
摘要:應用實例所依賴的服務提供者可以在配置文件中的節點找到。完成所有服務提供者注冊到應用實例后,應用實例執行啟動方法引導項目啟動。或內核接收到請求,加載服務提供者,同時,將請求分發給路由器執行。 這是一篇翻譯文章,原文 Request Life Cycle of Laravel,譯文 Laravel 請求生命周期 首發于個人博客,轉載請注明出處。 當需要使用一個框架、工具或者服務時,在使用前...
閱讀 3017·2023-04-26 00:32
閱讀 498·2019-08-30 15:52
閱讀 2105·2019-08-30 15:52
閱讀 3347·2019-08-30 15:44
閱讀 3280·2019-08-30 14:09
閱讀 1416·2019-08-29 15:15
閱讀 3390·2019-08-28 18:12
閱讀 1074·2019-08-26 13:55