PHP扩展开发入门

假设我们要创建一个PHP扩展函数 hkhw ,用来打印字 hello world 符串.
PHP为了扩展开发的方便,提供了一个类似代码生成器的工具ext_skel

简单步骤如下

1.创建一个文件hk.skel,它的内容为

string hkhw()

执行代码 , 告诉ext_skel 我们要做的扩展里有 hkhw 这么个函数 ,生成扩展框架

cd /php/ext/
./ext_skel --extname=hk --proto=hk.skel
cd hk

2.修改config.m4文件将

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

修改为

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

3. 修改源码hk.c文件
将PHP_FUNCTION(hkhw)这个函数修改为

PHP_FUNCTION(hkhw)
{
 if (zend_parse_parameters_none() == FAILURE) {
 return;
 }
 php_printf("Hello World");
}

4. 正常流程编译扩展即可