PHP扩展编写流程简述(LINUX)

心血来潮整理一下php的扩展开发步骤,最简单的,几乎不写什么代码

1、准备条件:LINUX环境(centos7.5),下载PHP源码(我这是7.2的,如果编译安装过就直接进入编译安装的源码目录下操作记性,不必重新再来下载解压),其他的就不管了 ,需要什么依赖自己装什么

2、进入源码目录下的ext目录,你会看到下面标出来的这个文件,ext_skel_win32.php和ext_skel,window下使用第一个,linux下使用后面一个(ext_skel),如下图所示:

PHP扩展编写流程简述(LINUX)_第1张图片

2.1、查看命令使用方法 

PHP扩展编写流程简述(LINUX)_第2张图片

2.2、使用命令生成扩展目录,会显示开发的基本步骤并会新建一个对用的扩展包目录

PHP扩展编写流程简述(LINUX)_第3张图片

2.3 进入phper目录,对对应文件进行修改

2.3.1、配置m4文件,如果红圈的前后行被注释那就去掉注释(dnl)圈住这一行可去可不去,删除也没事

2.3.2、编写phper.c代码 

3.2.2.1、找到扩展模块入口,有这些数据信息,具体参数可自行查看。本例中此步骤并不需要

PHP扩展编写流程简述(LINUX)_第4张图片

3.2.2.2、找到方法入口定义方法 这里新添加的是phper_old 和phper_young 

PHP扩展编写流程简述(LINUX)_第5张图片

3.2.2.3、在此处编写方法phper_old 和phper_young 

PHP扩展编写流程简述(LINUX)_第6张图片

3.2.3 准备编译安装,到次底部就编译成功了(此处就不截图了,省略部分步骤的截图)

命令:phpize             ./configure             make               make install  

3、去找到并编辑php.ini 文件加入扩展.so文件

PHP扩展编写流程简述(LINUX)_第7张图片

4、编辑探针文件,并调用方法,然后重启看效果:

PHP扩展编写流程简述(LINUX)_第8张图片PHP扩展编写流程简述(LINUX)_第9张图片PHP扩展编写流程简述(LINUX)_第10张图片

 

4.注释,这是心血来潮整理的一点步骤逻辑,没什么难度,以上对linux熟悉几分钟就能实现,这只是一个愤怒常见到只能简单体现实现步骤,真正的扩展开发远远比这复杂得多,会设计更多文件的编辑,比如头文件phper.h等

 

 

 

你可能感兴趣的:(Linux,PHP,Centos7)