課程介紹
帶你編譯安裝PHP7
如何要對PHP7與PHP5進行效能對比(沒有對比,就沒有差距)
PHP7有哪些新特性
PHP7還有其它新特性
再次認識PHP7的所有特性
什麼是小而巧的zval
不同變數對應的zval實戰
Zend_string與寫入時複製實戰
帶你實戰引用類型的使用
什麼是PHP7原始碼中的數組
帶你實戰數組的增刪改查
繼續實戰數組的增刪改查(徹底知道數組的底層實作邏輯)
再次總結基本變數
記憶體管理基礎知識
什麼是真正的記憶體分配過程_高清
什麼是Small記憶體的管理
帶你實戰Small記憶體管理
Chunk的記憶體對齊
認識真實的Small和Large內存的標記
記憶體標記和記憶體釋放時大小的判斷
總結記憶體管理
PHP運行的生命週期
什麼是CLI模式
實戰CLI模式的生命週期
認識模組初始化部分函數呼叫圖
詳解php_module_startup階段
詳解php_request_startup
詳解執行與管理階段
何為FPM的三種模式
網路程式設計的基礎知識
網路程式設計實戰
訊號處理實戰
FPM的生命週期
實戰:使用GDB調試FPM
FastCGI協定理論解說
FastCGI協定實戰
繼續 FastCGI協定實戰
小章總結
解釋型語言也需要編譯嗎
NFA 和 DFA
使用re2c做詞法分析
語法分析入門與巴科斯範式
實戰:使用bison做語法分析
PHP7的詞法與文法分析
實戰:PHP7詞法分析過程
PHP7語法分析的過程
AST編譯成指令集
實戰:AST編譯成opcode的過程
Zend虛擬機器的基礎
實戰:Zend虛擬機的執行
總結並回顧
break語法的AST、堆疊、符號表與指令集
break指令執行過程_高清
include語法的AST、堆疊、符號表和常數
include 語法的執行
條件判斷語法的AST
條件語句的堆疊、符號表、常數和指令集
條件語法的執行過程
foreach的AST、堆疊、符號表和常數數組
foreach指令集
foreach語法的執行過程
異常處理的AST、堆疊、符號表、常數和指令集
異常處理的執行過程
寫一個簡單的擴展
實戰:擴展的具體分析
一個簡單的日誌擴展
SeasLog擴展分析(一)
SeasLog擴展分析(二)
內部函數sort分析
內部擴展date
課程回顧與展望
本课程将带你深入剖析PHP7源码,掌握PHP7源码背后的原理,内核机制、核心技术点、PHP扩展及架构设计思想等,提高你的源码阅读和分析能力,提升你的编程技能和代码设计能力,让你快速突破技术瓶颈,解决性能调优和高并发问题。