有必要php扩展开发吗

(*-*)浩
(*-*)浩原创
2023-02-23 15:46:021435浏览

有两个理由需要自己编写PHP扩展。第一个理由是:PHP需要支持一项她还未支持的技术。这通常包括包裹一些现成的C函数库,以便提供PHP接口。

例如,如果一个叫FooBase的数据库已推出市场,你需要建立一个PHP扩展帮助你从PHP里调用FooBase的C函数库。这个工作可能仅由一个人完成,然后被整个PHP社区共享(如果你愿意的话)。

第二个不是很普遍的理由是:你需要从性能或功能的原因考虑来编写一些商业逻辑。

下载php源码包: (推荐学习:PHP视频教程

wget http://tw1.php.net/distributions/php-7.1.9.tar.gz

解压源码包 , Zend目录里面包含了PHP的Zend Engine源代码,有些函数和宏的定义我们需要在这里面简单地看一下。

ext目录里面包含了PHP原生的扩展,以及我们开发自己的扩展时可以利用的工具,Linux下使用ext_skel,Windows下使用ext_skel_win32.php

使用./ext_skel --help

php-15.png

./ext_skel --extname=module_name

就可以在ext目录下生成自己的扩展

config.m4配置文件

开发PHP扩展,在写C代码之前,要先配置一下这里。我们打开可以看到详细的注释说明,dnl是注释语法。

如果你的扩展用到了外部依赖,就配置–with-hello选项,否则配置–enable-hello选项,删除这下面3行的del注释

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

PHP_ARG_WITH和PHP_ARG_ENABLE这两个宏用来配置configure选项,一个配置需要外部依赖的,另一个配置不需要外部依赖的

配置好的内容,在后面执行configure –help时可以看到。

以上就是有必要php扩展开发吗的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。