php扩展开发 <一>

先从简单入手,找点感受php

一、计划编写个函数相似(基本不可能会用上,练练没办法)vim

    

function htest($str)
{
    return $str . '==';
}

二、准备好php安装包,本文使用的php5.5.8函数

三、编写原型文件 htestproto.def测试

string htest(string str)

四、进入php源码包 ext目录, 执行spa

./ext_skel --extname=htest --proto=htestproto.def

五、vim htest/config.m4, 去除10-12 行dnlcode

 10  PHP_ARG_WITH(htest, for htest support,
 11  Make sure that the comment is aligned:
 12  [  --with-htest             Include htest support])

六、vim htest/htest.c 实现函数    原型

PHP_FUNCTION(htest)
{
        char *str = NULL;
        int argc = ZEND_NUM_ARGS();
        int str_len;
        char *result;

        if (zend_parse_parameters(argc TSRMLS_CC, "s", &str, &str_len) == FAILURE)
                return;

        str_len = spprintf(&result, 0, "%s==", str);
        RETURN_STRINGL(result, str_len, 0);
}


七、编译源码

    /usr/local/php/bin/phpize
string

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

   make & make install


八、拷贝htest.so 文件到 php安装目录 的extensions目录

    添加extension = htest.so 到php.ini 中

九、测试

相关文章
相关标签/搜索