柒资源

PHP底层之一:PHP的原理

  • 时间:2018-04-01 20:01 编辑:张少平 来源:柒资源 阅读:395
  • 扫一扫,手机访问
摘要:PHP是一门弱类型适用于WEB开发的动态语言,总共有三个模块:php内核,zend引擎,扩展层。PHP内核用来处理请求、文件流、错误处理等相关操作;Zend引擎(ZE)用以将源文件转换成机器语言,然后在虚拟机上运行它;扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。比如,我们需要mysql扩展来连接MySQL数据库;当ZE执行程序时可能会需要连接若干扩展,这时ZE将控制权交给扩展,等处理完特定任务后再返还;最后,ZE将程序运行结果返回给PHP内核,它再将结果传送给SAPI层,最终输出到浏览器上。

PHP是一门弱类型适用于WEB开发的动态语言,总共有三个模块:php内核,zend引擎,扩展层。PHP内核用来处理请求、文件流、错误处理等相关操作;Zend引擎(ZE)用以将源文件转换成机器语言,然后在虚拟机上运行它;扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。比如,我们需要mysql扩展来连接MySQL数据库;当ZE执行程序时可能会需要连接若干扩展,这时ZE将控制权交给扩展,等处理完特定任务后再返还;最后,ZE将程序运行结果返回给PHP内核,它再将结果传送给SAPI层,最终输出到浏览器上。

?????? 关于介绍PHP原理,分享一篇关于PHP运行机制的文章:PHP的运行机制

关于PHP的变量,PHP是一门弱类型语言,本身不严格区分变量的类型。PHP在变量申明的时候不需要指定类型。PHP在程序运行期间可能进行变量类型的隐示转换。和其他强类型语言一样,程序中也可以进行显示的类型转换。PHP变量可以分为简单类型(int、string、bool)、集合类型(array resource object)和常量(const)。以上所有的变量在底层都是同一种结构 zval。

Zval主要由三部分组成: type:指定了变量所述的类型(整数、字符串、数组等) refcount&is_ref:用来实现引用计数(后面具体介绍) value:核心部分,存储了变量的实际数据 Zvalue是用来保存一个变量的实际数据。因为要存储多种类型,所以zvalue是一个union,也由此实现了弱类型。

关于ZVAL分享一篇:PHP的垃圾回收机制详解

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【技术干货|】火车头采集器7.6破解版出现闪退的解决办法(2018-04-11 13:19)
【技术干货|】PHP中常见的知识点不得不知道的技术点(2018-04-04 16:55)
【技术干货|】PHP工作中案例的总结-简述版(2018-04-04 16:32)
【技术干货|】PHP面试总结(2018-04-04 15:16)
【技术干货|】浅谈MySQL中优化sql语句查询常用的30种方法(2018-04-04 14:29)
【新闻资讯|】强制索权!中国电信这款APP不仅索要70多项权限,还要修改你的通讯录(2018-04-02 19:06)
【技术干货|】什么是死锁和如何解决死锁(2018-04-02 19:00)
【技术干货|】PHP 图片自动过滤和检测(2018-04-02 15:51)
【技术干货|】PHP主流技术之:PHP7的新特性(2018-04-02 10:16)
【技术干货|】关于HTTP协议(2018-04-02 09:59)
网站首页??|?? 关于我们??|?? 广告合作??|?? 联系我们??|?? 隐私条款??|?? 免责声明
CopyRight 2014-2024 柒资源 | 京ICP备17053914号-2
联系客服
平台客服 平台小二 招商入驻 联系客服
13051431117
手机版

扫一扫进手机版
返回顶部