如何新建PHP Extension 扩展模块?

分类:PHP | 作者:凹凸曼 | 发表于2011/06/15

这个天气热啊!如何新建php扩展模块的测试
在linux虚拟机的环境测试了一下 

第一、下载PHP源代码(有已经安装版,无源码需要下载 

地址:http://cn.php.net/get/php-5.3.6.tar.gz/from/a/mirror 

第二、生成扩展框架(也可以自己手写哦) 

tar zxvf   php-5.3.6.tar.gz 

cd  php-5.3.6/ext/          

./ext_skel --extname=mymodule  #扩展模块的名字

最后生成了如下图所示: 

 

第三、修改Build System配置 

linux环境下是用的config.m4文件 

打开此文件 dnl为注释 已修改如下 

dnl PHP_ARG_WITH(mymodule, for mymodule support,
dnl Make sure that the comment is aligned:
dnl [  --with-mymodule             Include mymodule support])

dnl Otherwise use enable:

PHP_ARG_ENABLE(mymodule, whether to enable mymodule support,
Make sure that the comment is aligned:
[  --enable-mymodule           Enable mymodule support])

其他可以不用修改直接测试 

第四、编译,安装扩展 

cd  mymodule
usr/local/php/bin/phpize

./configure  --with-php-config=/usr/local/php/bin/php-config

make

make install

第五、查看配置信息 


查看php.ini是否有extension=mymodule.so 无此模块,就添加上 
 
接着重启
/usr/local/php/sbin/php-fpm  restart

打开phpinfo() 查看是否有mymodule模块
有的话就安装成功了
第六、运行 

在测试文件里添加并运行 

<?php echo confirm_mymodule_compiled("apoyl") ?>

输出数据就算,搞定了

总结:上面所述让你感受哈,类似curl、gd、ftp、pdo库等等是怎样搞出来的。嘻嘻
如果你需要自己开发一个php扩展库 那你需要懂c编程了哈!

本文出自 “凹凸曼” 博客,请务必保留此出处 http://www.apoyl.com/?p=972

Tag:

日志信息 »

该日志于2011-06-15 09:00由 凹凸曼 发表在PHP分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

目前盖楼 (0)层:

发表评论 »

« »