php执行过程
来源:互联网 发布:贵州大数据管理局地址 编辑:程序博客网 时间:2024/05/29 15:58
一直以来都只是用php,而没有过多的关注他是怎么实现的,自从学了java之后,才慢慢关注这些,今天写一些关于php的执行过程。从写的php脚本到最后的返回结果。这中间究竟发生了什么呢??
整个PHP的执行期入手,大致的介绍下各个阶段,词法分析,语法分析,op code等等首先,Zend Engine(ZE),调用词法分析器(Lex生成的,源文件在 Zend/zend_language_sanner.l), 将我们要执行的PHP源文件,去掉空格 ,注释,分割成一个一个的token。然后,ZE会将得到的token forward给语法分析器(yacc生成, 源文件在 Zend/zend_language_parser.y),生成一个一个的op code,opcode一般会以op array的形式存在,它是PHP执行的中间语言。最后,ZE调用zend_executor来执行op array,输出结果
zend又是什么呢?
ZE是一个虚拟机,正是由于它的存在,所以才能使得我们写PHP脚本,完全不需要考虑所在的操作系统类型是什么。ZE是一个CISC(复杂指令处理器), 它支持150条指令(具体指令在 Zend/zend_vm_opcodes.h),包括从最简单的ZEND_ECHO(echo)到复杂的 ZEND_INCLUDE_OR_EVAL(include,require),所有我们编写的PHP都会最终被处理为这150条指令(op code)的序列,从而最终被执行。
原文地址
阅读全文
0 0
- php的执行过程
- php的执行过程
- php执行过程
- PHP脚本执行过程
- PHP的执行过程
- php执行过程
- php执行过程
- php 执行mysql存储过程
- PHP执行过程中的log
- php程序的执行过程
- php迭代器的执行过程
- PHP生命周期,内核执行过程
- PHP中的MINI的执行过程
- Drupal安装过程执行php超时问题
- 看看PHP迭代器的内部执行过程
- magento 1.71 执行过程 index.php 分析
- 看看PHP迭代器的内部执行过程
- PHP代码的执行的过程
- STL iterator迭代器的使用
- 尝试使用CocoaPad
- Druid SQL 解析器的解析过程
- mybatis mapper xml的学习详解
- 刘鑫的论文《大规模相似文档检测系统》 补充
- php执行过程
- 百度编辑器自适应宽度
- Angular 2 without TypeScript or Node
- RTP/AVP & RTP/AVP/TCP
- Android输入系统实例简单实现之一键启动应用程序
- STL
- 每天学一点Swift----集合(二)
- set
- html设置图像水平间距