国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP的生命周期

sf190404 / 2938人閱讀

摘要:的啟動和終止請求之前的開始階段模塊初始化階段。的生命周期單進程生命周期多進程生命周期多線程的生命周期是一種比較特殊的,容許你在語言中調(diào)用提供的函數(shù)。不太了解,明天看一下綜述理一下的生命周期,以及整個執(zhí)行過程。

PHP的架構(gòu)圖

SAPI
SAPI(Server Application Programming Interfac) is an application programming interface (API) provided by the web server to help other developers in extending the web server capabilities.

SAPI是一個用來幫助其他開發(fā)程序擴展web服務(wù)器功能的應(yīng)用程序接口(api)。它將外部條件抽象, 為內(nèi)部的PHP提供一套固定統(tǒng)一的接口, 使得PHP自身實現(xiàn)能夠不受外部環(huán)境影響,保持一定的獨立性。
PHP中常用的SAPI有cli(命令行模式,單進程)、php-fpm、CGI、Apache...
有點像策略模式,使用相同的接口,但是實現(xiàn)會略有不同。

PHP的啟動和終止

請求之前的開始階段:

MINIT:模塊初始化階段。初始化一些擴展、常量、類、資源等所有被php腳本用到的東西。(常駐內(nèi)存,可以被所有請求使用。)

PRINT:模塊激活階段。PHP會調(diào)用所有模塊的RINIT函數(shù),在這個階段各個模塊也可以執(zhí)行一些相關(guān)的操作,比如初始化本次請求使用到的變量。

請求之后的結(jié)束階段:

RSHUTDOWN:這個頁面請求執(zhí)行完畢,或者被用戶給die(exit)了, 這時PHP會啟動回收程序,回收本次請求使用的資源。這次會執(zhí)行所有已加載擴展的RSHUTDOWN(俗稱Request Shutdown)方法, 這時候擴展可以利用內(nèi)核中的變量表等做的一些事情。因為PHP一旦把所有擴展的RSHUTDOWN方法執(zhí)行完,便會釋放掉這次請求使用過的所有資源,比如變量表的所有變量、所有在這次請求中申請的內(nèi)存等。

MSHUTDOWN:PHP執(zhí)行所有擴展的MSHUTDOWN,釋放資源。

PHP的生命周期

1.單進程SAPI生命周期(CLI/CGI)

2.多進程SAPI生命周期(Apache2)

3.多線程的SAPI生命周期

4.Embed

Embed SAPI是一種比較特殊的sapi,容許你在C/C++語言中調(diào)用PHP/ZE提供的函數(shù)。(不太了解,明天看一下! http://www.laruence.com/2008/09/23/539.html)

綜述

理一下PHP的生命周期,以及PHP整個執(zhí)行過程。還有怎么通過SAPI和PHP模塊溝通.
(圖片基本是從參考鏈接那邊拿過來的,站在前人的肩膀上。)

參考

http://www.laruence.com/2008/08/12/180.html

https://en.wikipedia.org/wiki/Server_Application_Programming_Interface

http://www.cunmou.com/phpbook/1.1.md

https://foio.github.io/php-sapi/

http://www.php-internals.com/book/?p=chapt02/02-01-php-life-cycle-and-zend-engine

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/28252.html

相關(guān)文章

  • PHP工作原理和生命周期

    摘要:的工作原理和生命周期是一門適用于開發(fā)的動態(tài)語言,它可以說是一個用語言實現(xiàn)的包含大量組件的軟件框架。無論是哪種公眾模式,的工作原理都是一樣的,都是作為一種運行。 PHP的工作原理和生命周期 php是一門適用于web開發(fā)的動態(tài)語言,它可以說是一個用C語言實現(xiàn)的包含大量組件的軟件框架。那么,php是如何工作的呢?它的生命周期是怎么樣的呢? 表層分析 php是以請求/響應(yīng)為周期運行服務(wù)端應(yīng)用...

    happyhuangjinjin 評論0 收藏0
  • PHP生命周期

    摘要:結(jié)算處理順利運行完文件用戶主動致命回收程序釋放掉這次請求使用過的所有東西包括變量表的所有變量所有在這次請求中申請的內(nèi)存等等請確保文件可寫,否則會莫名崩潰讓我們看看是不是每次請求結(jié)束都會在這個文件里追加數(shù)據(jù)通知自己要的時候,便進入俗稱階段。 /* * PHP生命周期 * PHP程序的啟動 * 前置初始化(Apache或Nginx相關(guān)操作) * ...

    sushi 評論0 收藏0
  • PHP生命周期

    摘要:的整個生命周期被劃分為以下幾個階段模塊初始化階段請求初始化階段執(zhí)行腳本階段請求關(guān)閉階段模塊關(guān)閉階段。 PHP的整個生命周期被劃分為以下幾個階段:模塊初始化階段(module startup)、請求初始化階段(request startup)、執(zhí)行腳本階段(executescript)、請求關(guān)閉階段(request shutdown)、模塊關(guān)閉階段(module shutdown)。根據(jù)...

    wh469012917 評論0 收藏0
  • Laravel 請求生命周期

    摘要:應(yīng)用實例所依賴的服務(wù)提供者可以在配置文件中的節(jié)點找到。完成所有服務(wù)提供者注冊到應(yīng)用實例后,應(yīng)用實例執(zhí)行啟動方法引導(dǎo)項目啟動。或內(nèi)核接收到請求,加載服務(wù)提供者,同時,將請求分發(fā)給路由器執(zhí)行。 這是一篇翻譯文章,原文 Request Life Cycle of Laravel,譯文 Laravel 請求生命周期 首發(fā)于個人博客,轉(zhuǎn)載請注明出處。 當(dāng)需要使用一個框架、工具或者服務(wù)時,在使用前...

    junfeng777 評論0 收藏0

發(fā)表評論

0條評論

sf190404

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<