php底层原理
1、PHP动态语言执行过程:拿到一段代码后,经过词法解析、语法解析等阶段后,源程序会被翻译成一个个指令(opcodes),然后ZEND虚拟机顺次执行这些指令完成操作。PHP本身是用C实现的,因此最终调用的也是C的函数,实际上,我们可以把PHP看做一个C开发的软件。
2、PHP的4层运行体系:
(1)Zend引擎:Zend整体用纯C实现,是PHP的内核部分,他将PHP代码翻译(词法、语法解析等一系列编译过程)为可执行opcode的处理并实现相应的处理方法、实现了基本的数据结构(如:hashtable、OO)、内存分配机制及管理、提供了相应的api方法供外部调用,是一切的核心,所有的外围功能均围绕Zend实现。
(2)Extensions:围绕着Zend引擎,extensions通过组件式的方式提供各种基础服务,我们常见的各种内置函数(array系列)、标准库等都是通过extension来实现,用户也可以根据需要实现自己的extension的典型应用)。
(3)Sapi:Sapi全称ServerApplicationProgrammingInterface,也就是服务端应用编程接口,Sapi通过一系列钩子函数,使得PHP可以和外围交互数据,这是PHP非常优雅和成功的设计,通过sapi成功的将PHP本身和上层应用解耦隔离,PHP可以不再考虑如何针对不同应用进行兼容,而应用本身也可以针对自己的特点实现不同的处理方式。
(4)上层应用:这就是我们平时编写的PHP程序,通过不同的spai方式得到各种各样的应用模式,如何通过webserver实现web应用、在命令行下已脚本方式运行等等。
0
纠错
猜你喜欢
三花聚顶是什么修为
三花聚顶是内丹学术语,在古代,花与华通,华乃是花的本字,故而...电动板手转数可以却没力
动扳手没力原因可能是电机损坏电池没电。电动扳手主要应用于钢结...电脑使用qq时如何关闭信息声音
我们使用电脑时常常会被的各种消息所困扰,有个人消息,群消息等...什么是增益介质
增益介质是指增加好处的波动能量的传递。介质是指波动能量的传递...裤子大了怎么办小窍门
裤子大了一般是腰太肥或者是裤腿太长,想要把裤子改到合适,有很...ps中的滤镜在哪
首先把所需的素材拖拽倒中,在菜单选项卡中点击图像,选择调整选...什么是高职单招 单招和高考的区别
很多考生对高职单招是什么的问题很好奇,那么什么是高职单招呢下...纳米海绵魔力擦的原理
纳米海绵特殊的三维网状结构在沾湿后形成纳米毛细管,这些毛细管...只买商业险不买交强险可以吗
不可以根据交强险条例的规定,在中华人民共和国境内道路上行驶的...魔兽世界奥法宝典怎么获得
血精灵怪集中的地方刷怪获得如虚空风暴的法力熔炉,虚空风暴的小...不用home键怎么截屏苹果手机
进入苹果手机的设置,一般在页面就可以看到,点击进入之后,选择...ts是什么视频文件
是高清格式,全称为。即的缩写。格式的特点就是要求从视频流来的...化妆一定要用隔离霜吗
隔离霜并不是一个必须要用的产品,相当于底妆,为后续化妆做准备...怎么减大腿小腿肥肉
减大腿小腿肥肉的方法平时还要是少坐,如果是在办公室上班,那没...陆游月夜的意思
我醉酒醒来时发现黑天了,玉制的壶太凉了。天上的风忽然送来荷花...