1、对Scanning进行词法分析,将PHP代码转换为语言片段。
2、解析Parsing,将Tokens转换成简单而有意义的表达式。
3、将Compilation编译成Opcode。
4、执行Execution,按顺序执行Opcode。
每次一条,实现PHP代码表达的功能。
实例
struct _zend_op { const void *handler; //对应执行的C语言function,即每条opcode都有一个C function处理 znode_op op1; //操作数1 znode_op op2; //操作数2 znode_op result; //返回值 uint32_t extended_value; uint32_t lineno; zend_uchar opcode; //opcode指令 zend_uchar op1_type; //操作数1类型 zend_uchar op2_type; //操作数2类型 zend_uchar result_type; //返回值类型 };
以上就是php Zend引擎执行代码的方法,希望对大家有所帮助。更多php学习指路:源码网