php底层结构原理简析
2022/6/24 14:21:55
本文主要是介绍php底层结构原理简析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
用了这么多年php,底层原理我其实自己还是没完全吃透。这里简单记录一下php的底层结构和工作原理,用于记录:
php是一种适用于web开发的动态弱类型语言,它的底层是用c语言实现的。
1、特点:
多进程模型:php是多进程模型,各请求之间互不干涉,这样保证了每一个请求不会对整个服务有巨大影响,当然现在的php有很多方法来实现多进程模型。
弱类型语言:和c、Java、等等等语言类型不同,它属于弱类型语言,一个变量的类型并不是一开始就确定不变的,只有在运行到最后才能确定变量类型。
Zend 引擎 + Ext 扩展 的模式降低了内部耦合,可以方便的为PHP本身增加功能和去除功能。语法简单灵活,没有什么太严格规范2、PHP的架构:
以目前的 PHP 主流版本 PHP7 和 PHP5 来说架构是如上图所示,主要有四层体系构成,从下到上依次是 Zend 引擎、Extensions 扩展、SAPI 接口、Application。
Zend引擎
Zend引擎整体是纯C语言实现的,是php的内核部分,PHP的代码编译处理、基本的数据结构、内存分配管理、相应的api方法都是由它提供的,php的一切核心和外围功能都是围绕zend实现。
Extensions:
围绕zend引擎,Extensions 通过组件方式提供各种基础服务,我们常见的内置函数、标准库等都是通过extensions来实现的,开发人员也可以根据自己的需要开发实现自己的Extensions扩展。
SAPI
SAPI 是 Server Application Programming Interface 的缩写,中文为服务端应用编程接口,它通过一系列钩子函数使得PHP可以和外围交换数据,SAPI 就是 PHP 和外部环境的代理器,它把外部环境抽象后,为内部的PHP提供一套固定的,统一的接口,使得 PHP 自身实现能够不受错综复杂的外部环境影响,保持一定的独立性。
通过 SAPI 的解耦,PHP 可以不再考虑如何针对不同应用进行兼容,而应用本身也可以针对自己的特点实现不同的处理方式。
Application
程序员编写的PHP程序,无论是 Web 应用还是 Cli 方式运行的应用都是上层应用,PHP 程序员主要工作就是编写它们
嗯暂时先记录这么多吧!简单了解下结构
这篇关于php底层结构原理简析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享
- 2024-10-20fruitcake/php-cors 该怎么使用-icode9专业技术文章分享
- 2024-10-18PHP7.1可以使用哪个版本的swoole-icode9专业技术文章分享