PHP扩展开发(1)-生成扩展框架
2013-08-02 18:39
489 查看
一、准备源代码
从PHP官网上下载PHP的源代码。http://php.net/downloads.php 具体哪个版本,可以自行选择。下载完成后解压。
二、创建一个扩展,并导入到PHP中
PHP为扩展开发提供了一个扩展的生成工具:ext_skel
首先我们要进入源代码的ext目录。我们可以看到ext目录中有一个ext_skel.执行如下命令:
./ext_skel --extname=test
此时,我们可以看到,在当前目录生成了一个test的文件夹。里面有几个文件,接下来,我们按步骤来配置一下这个扩展。
1. 进入test目录
2. 修改config.m4文件(此文件是自动生成在test目录下的)。找到如下几行内容。
dnl PHP_ARG_WITH(test, for test support,
dnl Make sure that the comment is aligned:
dnl [ --with-test Include test support])
其中dnl是注释的意思。把前三行的dnl删除掉。变成:
PHP_ARG_WITH(test, for test support,
Make sure that the comment is aligned:
[ --with-test Include test support])
3. 修改test.c. 找到PHP_FE_END,并改为{NULL, NULL, NULL}
4. 执行phpize
5. 执行./configure
6. sudo make install
执行完成后,会发现生成了一个modules/test.so 这个就是最终编译好的扩展模块。
7. 将modules/test.so拷贝到php的安装目录下的extensions子目录。
8. 修改php配置文件,添加一行
extension=test.so
即将 test.so导入到了PHP中。
9. 执行命令:php -m
此命令可列出所有已加载的模块,查看一是否有test模块,确保已正常加载。
完成以上步骤后,我们就创建好了一个test扩展的框架了。以后我们要实现的各种功能都会基于这个框架开发。让我们拭目以待吧。
从PHP官网上下载PHP的源代码。http://php.net/downloads.php 具体哪个版本,可以自行选择。下载完成后解压。
二、创建一个扩展,并导入到PHP中
PHP为扩展开发提供了一个扩展的生成工具:ext_skel
首先我们要进入源代码的ext目录。我们可以看到ext目录中有一个ext_skel.执行如下命令:
./ext_skel --extname=test
此时,我们可以看到,在当前目录生成了一个test的文件夹。里面有几个文件,接下来,我们按步骤来配置一下这个扩展。
1. 进入test目录
2. 修改config.m4文件(此文件是自动生成在test目录下的)。找到如下几行内容。
dnl PHP_ARG_WITH(test, for test support,
dnl Make sure that the comment is aligned:
dnl [ --with-test Include test support])
其中dnl是注释的意思。把前三行的dnl删除掉。变成:
PHP_ARG_WITH(test, for test support,
Make sure that the comment is aligned:
[ --with-test Include test support])
3. 修改test.c. 找到PHP_FE_END,并改为{NULL, NULL, NULL}
4. 执行phpize
5. 执行./configure
6. sudo make install
执行完成后,会发现生成了一个modules/test.so 这个就是最终编译好的扩展模块。
7. 将modules/test.so拷贝到php的安装目录下的extensions子目录。
8. 修改php配置文件,添加一行
extension=test.so
即将 test.so导入到了PHP中。
9. 执行命令:php -m
此命令可列出所有已加载的模块,查看一是否有test模块,确保已正常加载。
完成以上步骤后,我们就创建好了一个test扩展的框架了。以后我们要实现的各种功能都会基于这个框架开发。让我们拭目以待吧。
相关文章推荐
- TP框架开发的站点使用phpdoctor生成文档注意事项
- PHP扩展开发(1)-创建基础框架
- 菜鸟学php扩展 之 自动生成的扩展框架详解(二)
- 在vs2008开发PHP扩展之二--vs2008下PHP扩展项目的建立配置以及生成dll
- [翻译][php扩展开发和嵌入式]第18章-php的扩展自动生成
- Linux 搭建php扩展开发框架
- PHP扩展生成框架的一个简便功能
- PHPWeb开发框架Swoole的介绍
- 快速开发一个PHP扩展
- 十款PHP开发框架横向比较
- php生成数据字典小脚本,在thinkphp框架中可直接执行
- [转]PHP开发框架流行度排名:Laravel居首
- php扩展开发笔记(2)多个源代码文件的配置和编译
- IOS开发使用原生框架,二维码(条形码)的生成与扫描(支持长按扫描),可控制闪光灯
- 在 windows 下 用C++ 开发 PHP 扩展
- php扩展开发---将类赋值给zval变量-object_init_ex
- 【备忘】php 高性能yii2框架开发高性能高可用负载均衡集群架构商城视频教程
- PHP十款开发框架
- 一个简单php扩展介绍与开发教程
- PHP扩展开发进阶