文章插图
推荐操作系统:windows7系统、php5.6、DELL G3电脑
1、执行原理
PHP实现了典型的动态语言执行过程:取得代码后,在语法分析、语法分析等阶段,将源程序翻译成指令(opcodes),ZEND虚拟机按顺序执行这些指令完成操作 。PHP本身是通过C过C实现的,所以最终调用的也是C的函数,实际上可以把PHP视为C开发的软件 。
2、框架分析
(1)Zend引擎:Zend整体是纯c实现的,是PHP的核心部分,将PHP代码翻译(语法、语法分析等一系列编译过程)实现opcode的处理,实现相应的处理方法,实现基本的数据结构(hashtable、oo)、内存分配和管理、相应的api方法
(2)Extensions:围绕Zend引擎,extensions以组件方式提供各种基础服务,我们常见的各种内置功能(如array系列)、标准库等通过extension实现,用户也可以根据需要实现自己的extension
(3)Sapi:Sapi的全名是ServerApplicationProgrammingInterface,即服务终端的应用程序设计界面,Sapi通过一系列挂钩功能,PHP可以与周边的互动数据,这是PHP非常优雅成功的设计
(4)上层应用:这是我们平时制作的PHP程序,通过不同的sapi方式获得网络应用程序,在命令下以脚本方式运行等各种应用程序模式 。
以上就是php框架底层原理的介绍,我们通过本篇的学习,可以对其中框架执行原理有所认知,在掌握了其基本的框架组成后,重点了解框架底层中Zend的概念 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- php解析json数组 php解析json数据
- php数据类型有哪几种 php常见变量类型有哪些?
- php数组添加元素的方法 php数组添加元素
- php哈希冲突是什么?
- php数组赋值方式有几种 php数组赋值方式
- php中QPM框架是什么?
- php zend框架 php Zend引擎如何执行代码
- php判断数组是否为空 php判断数组元素不为空格的方法
- php安装grpc扩展的方法
- php使用header禁止缓存的方法