zoukankan      html  css  js  c++  java
  • [PHP] PHP的脚本执行

    PHP的脚本执行:
    PHP的脚本执行还是会经过编译环节, 只不过它们一般会在运行的时候实时进行编译
    1.启动PHP及Zend引擎, 加载注册的扩展模块
    2.读取脚本文件,Zend引擎对脚本文件进行词法分析,语法分析。
    3.编译成opcode执行
    4.如果安装opcode缓存扩展(如APC, xcache, eAccelerator等),可能直接从缓存中读取opcode执行

    脚本的编译执行:
    1.读取脚本,通过lex按照词法规则切分一个一个的标记(token)。
    2.使用bison生成语法分析器。
    3.Zend引擎将代码编译为opcode
    4.PHP是构建在Zend虚拟机(Zend VM)之上的。PHP的opcode就是Zend虚拟机中的指令。

    编程语言的编译器(compiler)或解释器(interpreter)一般包括两大部分:
    1.读取源程序,并处理语言结构。
    2.处理语言结构并生成目标程序。

    词法分析器:
    Lex(词法分析生成器:A Lexical Analyzer Generator)。
    Yacc(Yet Another Compiler-Compiler)

    1.安装lex,apt-get install flex
    2.lex的词法规则文件
    定义段
    %%
    规则段
    %%
    用户代码段

  • 相关阅读:
    nginx 转发配置
    Rancher中httpd证书的管理和使用
    JDK-docker
    软路由
    rancher相关
    rancher部署
    电商 好文 知识积累
    SpringBlade 接口文档 请求token接口报错
    SpringBlade 接口文档 无法访问
    电商 好文
  • 原文地址:https://www.cnblogs.com/taoshihan/p/8321050.html
Copyright © 2011-2022 走看看