字面量存儲:PHP代碼中定義的一些變量初始值、調用的函數(shù)名稱、類名稱、常量名稱等等稱之為字面量,這些值用于執(zhí)行時初始化變量、函數(shù)調用等等
變量分配情況:與字面量類似,這里指的是當前opcodes定義了多少變量、臨時變量,每個變量都有一個對應的編號,執(zhí)行初始化按照總的數(shù)目一次性分配zval,使用時也完全按照編號索引,而不是根據(jù)變量名索引

從PHP代碼到opcode是怎么實現(xiàn)的?

最容易想到的方式就是正則匹配,當然過程沒有這么簡單。PHP編譯過程包括詞法分析、語法分析,使用re2c、bison完成,舊的PHP版本直接生成了opcode,PHP7新增了抽象語法樹(AST),在語法分析階段生成AST,然后再生成opcode數(shù)組

贊(0)
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享網絡內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-62778877-8306;郵箱:fanjiao@west.cn。本站原創(chuàng)內容未經允許不得轉載,或轉載時需注明出處:西部數(shù)碼知識庫 » 如何編譯php文件

登錄

找回密碼

注冊