假设需求
开发一个叫做 helloword 的扩展。
扩展里有一个函数,helloword()。
echo helloword('tom'); //返回:hello world: tom
本地环境
php版本:5.6.9
系统:linux centos relea 6.5 (final)
最终效果
实现流程
第一步:
进入到本地的php目录执行:
cd /root/soft/src/php-5.6.9 cd ext ./ext_skel --extname=helloword cd helloword vi config.m4 搜索:dnl otherwi u enable 将下面修改成: php_arg_enable(helloworld, whether to enable helloworld support, [ --enable-helloworld enable helloworld support]) if test "$php_helloworld" != "no"; then ...
如图:
第二步:
vi php_helloworld.h 搜索:extern zend_module_entry 新增一行: php_function(helloworld);
如图:
第三步:
vi helloworld.c 搜索:const zend_function_entry helloworld_functions[] 新增一行: php_fe(helloworld, null)
今夜月明人尽望
如图:
在 helloworld.c 底部新增一个方法 php_function(helloworld) { char *arg = null; int arg_len, len; char *strg; if (zend_par_parameters(zend_num_args() tsrmls_cc, "s", &红星照耀中国主要内容;arg, &arg_len) == failure) { return; } len = spprintf(&strg, 0, "hello world: %s", arg); return_stringl(strg, len, 0); }
如图:
第四步:
//编译安装 cd /root/soft/src/php-5.6.9/ext /usr/local/php/bin/phpize #用phpize生成configure配置文件 ./configure --with-php-config=/usr/local/php/bin/php-config #配置 make #编译 make install 文学经典#安装
第五步:
//修改php.ini extensi酶活性on="helloworld.so" #名称为安装扩展的名称
第六步:
重启环境。
完成上面的步骤,简单的 helloworld 扩展就ok了。
大家可以根据自己的需求,开发满足题目的含义自己的扩展。
比如,可以开发一些扩展类,扩展方法,等等。
本文发布于:2023-04-07 22:06:41,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/de4ffee430e02baa24492be1a9ca9e52.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:Linux 下编写一个 PHP 扩展.doc
本文 PDF 下载地址:Linux 下编写一个 PHP 扩展.pdf
留言与评论(共有 0 条评论) |