国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

PHP內核探索 —— 一次請求的開始與結束:MINIT和RINIT、RSHUTDOWN和MSHUTDOWN

瀏覽:13日期:2022-09-16 11:08:22

PHP開始執行以后會經過兩個主要的階段:

處理請求之前的開始階段請求之后的結束階段

開始階段有兩個過程:

第一個過程是模塊初始化階段(MINIT), 在整個SAPI生命周期內(例如Apache啟動以后的整個生命周期內或者命令行程序整個執行過程中), 該過程只進行一次。

第二個過程是模塊激活階段(RINIT),該過程發生在請求階段, 例如通過url請求某個頁面,則在每次請求之前都會進行模塊激活(RINIT請求開始)。 例如PHP注冊了一些擴展模塊,則在MINIT階段會回調所有模塊的MINIT函數。 模塊在這個階段可以進行一些初始化工作,例如注冊常量,定義模塊使用的類等等。

模塊在實現時可以通過如下宏來實現這些回調函數:

PHP_MINIT_FUNCTION(myphpextension){ // 注冊常量或者類等初始化操作 return SUCCESS; }

請求到達之后PHP初始化執行腳本的基本環境,例如創建一個執行環境,包括保存PHP運行過程中變量名稱和值內容的符號表, 以及當前所有的函數以及類等信息的符號表。然后PHP會調用所有模塊的RINIT函數, 在這個階段各個模塊也可以執行一些相關的操作,模塊的RINIT函數和MINIT回調函數類似:

PHP_RINIT_FUNCTION(myphpextension){ // 例如記錄請求開始時間 // 隨后在請求結束的時候記錄結束時間。這樣我們就能夠記錄下處理請求所花費的時間了 return SUCCESS; }

請求處理完后就進入了結束階段,一般腳本執行到末尾或者通過調用exit()或die()函數, PHP都將進入結束階段。和開始階段對應,結束階段也分為兩個環節,一個在請求結束后停用模塊(RSHUTDOWN,對應RINIT), 一個在SAPI生命周期結束(Web服務器退出或者命令行腳本執行完畢退出)時關閉模塊(MSHUTDOWN,對應MINIT)。

PHP_RSHUTDOWN_FUNCTION(myphpextension){ // 例如記錄請求結束時間,并把相應的信息寫入到日至文件中。 return SUCCESS; }

標簽: PHP
相關文章:
主站蜘蛛池模板: 国产精品久久久久久久久久久久 | 免费视频网站一级人爱视频 | 国产一区精品 | 亚洲欧美网站 | 日韩一级精品久久久久 | 在线免费观看一级毛片 | 国产精品夜色视频一区二区 | 久草在线视频免费看 | 台湾三级| 国产毛片a | 美女被免费视频网站a国产 美女被免费网站视频软件 美女被免费网站在线软件 美女被免费网站在线视频软件 | 国产片在线观看狂喷潮bt天堂 | 美女喷水网站 | 成人免费网址在线 | 国产男女爽爽爽爽爽免费视频 | 视频二区在线观看 | 国产日韩线路一线路二 | 国产成人精品高清免费 | 一区二区三区高清在线 | 极品丝袜高跟91白沙发在线 | a级午夜毛片免费一区二区 a级性生活视频 | 亚洲精品国产成人一区二区 | 步兵一区二区三区在线观看 | 91热在线观看精品 | 亚洲国产精品一区二区九九 | ccav在线永久免费看 | 久久视频一区 | 久久视频精品36线视频在线观看 | 日日爱影院 | 欧美精品日本一级特黄 | 欧美 另类 精品一区视频 | 久久久久久久久久久久久久久久久久 | 国产精品久久久久久久午夜片 | 国产成人无精品久久久久国语 | 日日碰碰 | 国产精品短视频免费观看 | 91热视频在线观看 | 国产人成精品 | 国产高清a毛片在线看 | 韩国美女爽快毛片免费 | 国产精品一区二区久久精品 |