最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php之深入理解架構(gòu)布局講解

 更新時(shí)間:2021年08月04日 09:57:31   作者:代碼界吳彥祖  
這篇文章主要介紹了php之深入理解架構(gòu)布局講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

本文基于《PHP 內(nèi)核剖析》與 《PHP7底層設(shè)計(jì)與源碼實(shí)現(xiàn)》所記筆記。
對(duì)PHP內(nèi)核的深入理解有助于我們對(duì)PHP的整體認(rèn)識(shí),對(duì)于業(yè)務(wù)層初期發(fā)展我們可以只了解基本語言的邏輯就可以寫出符合業(yè)務(wù)的代碼,但是隨著業(yè)務(wù)的發(fā)展我們通過分析源碼,編寫擴(kuò)展,深入了解PHP內(nèi)部機(jī)制,幫助我們理解PHP內(nèi)部實(shí)現(xiàn)邏輯,更好助力業(yè)務(wù)發(fā)展.

執(zhí)行流程

從上圖中看出主要從解析PHPCode到執(zhí)行主要經(jīng)過了四個(gè)階段.

獲取token可以通過Token_get_all('<?php echo "str";>')函數(shù)獲取token信息.

抽象語法樹主要將解釋器和編譯器進(jìn)行解耦.

opcodes最終執(zhí)行的指令,例如ZEND_ECHO:本質(zhì)還是一個(gè)對(duì)應(yīng)的C函數(shù).

架構(gòu)結(jié)構(gòu)

PHP架構(gòu)圖

Zend層為上層的PHP層提供一些基礎(chǔ)的內(nèi)存管理以及數(shù)據(jù)結(jié)構(gòu)等.

SAPI層為最上層和Server進(jìn)行通信,封裝了不同的通信類型,cgi,fast-cgi,cli等.

目錄結(jié)構(gòu)

sapi

存放根據(jù)不同環(huán)境支持的上層API交互形式,實(shí)現(xiàn)了不同的輸入輸出形式.

Zend

存放PHP相關(guān)的核心代碼,如前所述內(nèi)存管理等.

main

負(fù)責(zé)與Zend層交互的入口,還有一些鉤子函數(shù).

ext

主要是擴(kuò)展相關(guān)的目錄.通過ext_skel命令生成自定的模塊.會(huì)默認(rèn)安裝到這個(gè)目錄.

TSRM

線程資源管理相關(guān)的目錄,一般只有和Apache結(jié)合使用時(shí)會(huì)涉及到線程資源管理相關(guān)的代碼.
與Nginx相關(guān)的一般只會(huì)用到FastCGI協(xié)議不涉及到TSRM模塊.

到此這篇關(guān)于php之深入理解架構(gòu)布局講解的文章就介紹到這了,更多相關(guān)php之深入理解架構(gòu)布局內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

威宁| 麻栗坡县| 阿克| 四川省| 博野县| 阿巴嘎旗| 宾阳县| 新郑市| 永德县| 武胜县| 舟山市| 旬阳县| 龙胜| 泰顺县| 宝坻区| 怀远县| 明光市| 楚雄市| 尖扎县| 屏东市| 定兴县| 南安市| 青龙| 郧西县| 泉州市| 襄垣县| 汽车| 西藏| 象州县| 富阳市| 揭西县| 商都县| 东丰县| 云霄县| 江北区| 彩票| 湄潭县| 临西县| 灵宝市| 江孜县| 大兴区|