首頁  >  文章  >  後端開發  >  PHP生命週期

PHP生命週期

L
L轉載
2020-05-29 09:27:502100瀏覽

PHP生命週期

#php的架構圖

PHP生命週期

#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.##API



優恩庫。其他開發程式擴展web伺服器功能的應用程式介面(api)。它將外部條件抽象, 為內部的PHP提供一套固定統一的介面, 使得PHP自身實現能夠不受外部環境影響,保持一定的獨立性。 PHP生命週期PHP中常用的SAPI有cli(命令列模式,單進程)、php-fpm、CGI、Apache...

有點像策略模式,使用相同的接口,但是實作會略有不同。

PHP的啟動與終止

要求之前的開始階段:

MINIT:模組初始化階段。初始化一些擴充功能、常數、類別、資源等所有被php腳本用到的東西。 (常駐記憶體,可以被所有要求使用。)PRINT:模組啟動階段。 PHP會呼叫​​所有模組的RINIT函數,在這個階段各個模組也可以執行一些相關的操作,例如初始化本次請求所使用到的變數。

請求之後的結束階段:RSHUTDOWN:這個頁面請求執行完畢,或者被用戶給die(exit)了, 這時PHP會啟動回收程序,回收本次請求使用的資源。這次會執行所有已載入擴充的RSHUTDOWN(俗稱Request Shutdown)方法, 這時候擴充可以利用核心中的變數表等做的一些事情。因為PHP一旦把所有擴展的RSHUTDOWN方法執行完,便會釋放掉這次請求使用過的所有資源,例如變數表的所有變數、所有在這次請求中申請的記憶體等。 MSHUTDOWN:PHP執行所有擴充的MSHUTDOWN,釋放資源。

PHP的生命週期

PHP生命週期

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

PHP生命週期

2.多行程SAPI生命週期(Apache2)

PHP生命週期

#3.多執行緒的SAPI生命週期

4.EmbedEmbed SAPI是一種比較特殊的sapi,容許你在C/C 語言中呼叫PHP/ZE提供的函數

###推薦教學:《### PHP教程###》###

以上是PHP生命週期的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除