這裡閱讀的php版本為PHP-7.1.0 RC3,閱讀代碼的平台為linux
回到之前看的zend_eval_stringl
這裡的zend_execute執行了兩步,第一步是把php編譯解析成為opcode的過程,我們就先看這個。
zend_compile_string函數追下去可以追到compile_string
裡面最核心的就是zend_compile了。這裡的幾個點可以看看:
1 這麼做類型轉換,參考convert_to_string。這個函數就是把任意類型的值轉換為zval的string類型。
2 zval_dtor,這個函數是能把任意的zval變量做回收。非常好用。
3 ZVAL_DUP,是進行複制,它和ZVAL_COPY的差別在于是否增加gc的引用計數。
下面又找到關鍵點:zend_compile
本文轉自軒脈刃部落格園部落格,原文連結:http://www.cnblogs.com/yjf512/p/6132985.html,如需轉載請自行聯系原作者