用ext_skel,实现一个PHP扩展,添加到PHP并调用

PHPer 2023-07-16 192 0 0

深入PHP内核源码:用ext_skel探索生命周期


一、开始之前

1. 系统环境:FreeBSD 8.22. AP环境:即已经装好的Apache2.2.17、PHP5.3.8环境3. PHP源码:下载稳定版本源码到当前用户的目录,如,下载PHP 5.3.8到/usr/home/abc下。4. 其它要求(如果你要编译整个PHP):autoconf版本为2.13或2.59;

二、解压php源码包,阅读README.EXT_SKEL

1. 将下载下来的PHP源码包,解压。2. 进入到源码包,打开README.EXT_SKEL

如果,看到里面的详细说明,如果你已领会,那么就不用往下看了,赶紧自己开始吧。

三、根据README所提供的信息创建预定义文件和扩展的开发框架包

1. 在/usr/home/abc/下,新建一个phpext.skel文件(随自己的需要定义)。

内容如下:

编辑后保存。

注意:后面没有分号,这里只是我们自己提前将要定义的函数写在了一个文件里,为之后给--proto传参用,如果你熟练了这并不是必须步骤。

2. 进入到PHP源码包,即php-5.3.8/ext/内。你能看到有两个带ext_前缀的文件ext_skel、ext_skel_win32.php。运行ext_skel创建扩展的开发包,如下:

之后将在php-5.3.8/ext/内生成文件夹名为phpext的扩展默认开发框架包,文件夹内包含下面内容:

0_1331543677n3gn.gif

四、修改phpext文件内,config.m4、php_phpext.h、phpext.c三个文件

1. 修改config.m4文件,如图所示:

0_1331543687F1FK.gif

即,注释掉PHP_ARG_WITH或PHP_ARG_ENABLE(根据实际情况二选一,第一种是指扩展需第三方库支持)。

2. 修改php_phpext.h文件,如图所示:

0_1331543720ooPr.gif

即,注释掉默认声明的PHP函数,添加一个我们自己定义的PHP函数getext。 ...

立即注册
分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。
更新于:2023-07-16 14:59:42
    您需要登录后才可以评论。 立即注册
    相关内容

    [PHP] 网盘搜索引擎-采集爬取百度网盘分享文件实现网盘搜索

    PHP向js传数组

    php扩展的相关问题

    PHP与APP

    PHP是否可以应用于App开发

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    人气美女女优百度指数排行榜(波多野结衣,苍井空,三上悠亚,深田咏美,桥本有菜,北条...

    最强人造人深田咏美,业界的社交女王

    人生起起落落的三上悠亚,成名前的清纯风,怎么搭配出来的?

    业内第一大长腿,桥本有菜的腿究竟有多长

    波多野结衣,岛国业界著作最多的超级劳模

    日本AV界NO.1,苍井空是多少宅男的疯狂?

    美女女优视频混剪 This Girl-Laza Morgan

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享