深入理解PHP之源码目录结构与功能说明


Posted in PHP onJune 01, 2016

本文讲述了PHP源码目录结构与功能说明。分享给大家供大家参考,具体如下:

PHP之所以能在web开发语言中排名靠前,不仅仅是因为语法简单,上手容易。我个人认为更多是因为其语言本身的:模块的易扩展性,可维护性以及内存安全管理等特点。写过PHP的程序员不一定都知道:PHP是如何执行的?其组织结构目录的作用?如果对其有所了解,对PHP的认识会更深入,写出的代码也会更高效,更健壮......

1. build 和编译有关的目录。
2. ext 扩展库代码,例如 MySQL、zlib、iconv 等我们熟悉的扩展库。其中/ext/standard/ 目录下是常用的标准函数集。
3. main 主目录包含主要的 PHP 宏和定义。
4. sapi 和各种服务器的接口调用,例如apache、IIS等,也包含一般的fastcgi、cgi等。
5. win32 和 Windows 下编译 PHP 有关的脚本。
6. Zend 文件夹核心的引擎,所有的 Zend API 定义与宏等。
7. scripts Linux 下的脚本目录。
8. tests 测试脚本目录
9. sapi 各类 Web 服务器的接口。
10.TSRM Zend 和 PHP 的 “线程安全资源管理器” (TSRM) 目录。
11.pear 这个目录就是“PHP 扩展与应用仓库”的目录。包含了PEAR 的核心文件。

其中几个重要的文件绝对值得你共时间去了解:

php-src/main/php.h, 位于PHP 主目录。这个文件包含了绝大部分 PHP 宏及 API 定义。

php-src/Zend/zend.h, 位于 Zend 主目录。这个文件包含了绝大部分 Zend 宏及 API 定义。

php-src/Zend/zend_API.h, 也位于 Zend 主目录,包含了Zend API 的定义

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
输出控制类
Oct 09 PHP
在PHP中使用灵巧的体系结构
Oct 09 PHP
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
Nov 21 PHP
采集邮箱的php代码(抓取网页中的邮箱地址)
Jul 17 PHP
PHP应用JSON技巧讲解
Feb 03 PHP
phpexcel导入excel数据使用方法实例
Dec 24 PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
Dec 05 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
Jul 06 PHP
PHP实现对图片的反色处理功能【测试可用】
Feb 01 PHP
php伪静态验证码不显示的解决方案
Sep 26 PHP
php实现对文件压缩简单的方法
Sep 29 PHP
基于PHP生成简单的验证码
Jun 01 #PHP
深入理解PHP原理之执行周期分析
Jun 01 #PHP
深入理解PHP之OpCode原理详解
Jun 01 #PHP
深入理解PHP中的count函数
May 31 #PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
May 31 #PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 #PHP
让你的PHP7更快之Hugepage用法分析
May 31 #PHP
You might like
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
非常好用的两个PHP函数 serialize()和unserialize()
2012/02/04 PHP
Mac环境下php操作mysql数据库的方法分享
2015/05/11 PHP
php+mysql实现简单的增删改查功能
2015/07/13 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
php屏蔽错误及提示的方法
2020/05/10 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
2007/03/10 Javascript
jQuery 表单验证插件formValidation实现个性化错误提示
2009/06/23 Javascript
基于Jquery的标签智能验证实现代码
2010/12/27 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
2013/05/07 Javascript
jquery中常用的SET和GET$(”#msg”).html循环介绍
2013/10/09 Javascript
jquery判断元素的子元素是否存在的示例代码
2014/02/04 Javascript
基于javascript实现样式清新图片轮播特效
2016/03/30 Javascript
Bootstrap 折叠(Collapse)插件用法实例详解
2016/06/01 Javascript
jQuery选择器总结之常用元素查找方法
2016/08/04 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
2016/08/18 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
以BootStrap Tab为例写一个前端组件
2017/07/25 Javascript
Node.js笔记之process模块解读
2018/05/31 Javascript
angular4中*ngFor不能对返回来的对象进行循环的解决方法
2018/09/12 Javascript
对angularJs中controller控制器scope父子集作用域的实例讲解
2018/10/08 Javascript
vue实现购物车结算功能
2020/06/18 Javascript
[01:21]DOTA2周边文化主题展 神秘商店火热开售
2017/07/30 DOTA
python文件读写操作与linux shell变量命令交互执行的方法
2015/01/14 Python
Python txt文件加入字典并查询的方法
2019/01/15 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
Django 解决由save方法引发的错误
2020/05/21 Python
Python with语句用法原理详解
2020/07/03 Python
Python pathlib模块使用方法及实例解析
2020/10/05 Python
利用pipenv和pyenv管理多个相互独立的Python虚拟开发环境
2020/11/01 Python
匡威英国官网:Converse英国
2018/12/02 全球购物
金融管理应届生求职信
2014/02/20 职场文书
个人培训自我鉴定
2014/03/28 职场文书
Python极值整数的边界探讨分析
2021/09/15 Python
基于Python实现对比Exce的工具
2022/04/07 Python
Python matplotlib 利用随机函数生成变化图形
2022/04/26 Python