PHP源码结构

[源码结构]
在我们学习任何源码的时候,你都必须先对源码树有所了解,以便你能快速对PHP的文件进行划分。这是编写扩展所需的最基本能力。

主要文件和文件夹
文件/文件夹 内容
php-src PHP中主要的.c文件和.h头文件;你可以在这里看到PHP全部API、宏等内容的定义
php-src/ext 用于存放动态链接库(模块)和内部模块;默认情况下,这个文件夹里的内容是PHP官方模块,已经内置到PHP源码中。并且从PHP4.0开始,你已经可以采用动态加载的方法编译安装它们。(通过--enable-shared)
php-src/main 用于存放PHP各种宏定义
php-src/pear PHP扩展和应用库(PEAR),该文件夹存放着PEAR核心文件
php-src/sapi 各种和服务器交互的接口
TSRM Zend和PHP的安全线程资源管理器
ZendEngine2 用于存放Zend引擎;这里你可以看到全部的Zend API定义、宏定义等等

我们可不是在学习PHP源码,所以就不在此展开了。但是你应该看看以下几个文件:
php-src/main/php.h,该文件定义了大多数PHP宏和API
php-src/Zend/Zend.h,该文件定义了大多数Zend引擎的宏
php-src/Zend/zend_API.h,该文件定义了Zend引擎的API

同时你也应该看看这些文件,包括Zend executor,PHP初始化文件等等。看过这些文件之后试试找出各个文件和模块之间的依赖关系。它们之间有什么关系,如何相互使用的。在这个过程中你可以学到PHP官方的编码规范。为了扩展PHP,你应该尽快熟悉这种规范。

转载于:https://my.oschina.net/kear/blog/75080

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值