开发PHP扩展模块
来源:互联网 发布:手机网络苏菲广告美女 编辑:程序博客网 时间:2024/06/04 18:06
一、历史:在微博中,有很多对字符的操作,例如将用户的昵称替换为可点击的超链接,将话题解析。当然还有一些特出的做法。当我们将[TAG]xxx[TAG]输入到微博中,会自动变换为一个可以跳转到搜索页面的内容。在php中这是一个很简单的函数str_replcae()通过正则表达式就可以完成的工作。
将此部分用C语言编译到动态库中后,能一定程度提高渲染速度。一下主要介绍下如何通过C开发一个动态模块。
二、代码结构
需要编辑如下文件,将需要添加的FUNC添加到代码中。
config.m4
weibo_formatter.c
weibo_formatter.h
另外就是特别要用得到tag.c了。这个完全是一个可以调用的方法类,是由weibo_formatter.c中调用这个方法。
三、编译:
[root@vm12050051 chenhao_test]# phpize
[root@vm12050051 chenhao_test]# ./configure --enable-weibo
[root@vm12050051 chenhao_test]# make
[root@vm12050051 chenhao_test]# make install
注,建议每一个独立写的c文件,先单独通过cc编译。然后再做整体编译,否则make时是会报错的。
四、自动化测试,phpt
通过自带的run-test.php可以欲行phpt文件,并且和脚本中的断言做比对。
[root@vm12050051 chenhao_test]# php run-tests.php tests/tag_001.phpt
ERROR: environment variable TEST_PHP_EXECUTABLE must be set to specify PHP executable!
执行程序时,如果遇到以上问题,那么是需要在环境变量中添加特定变量的。
[root@vm12050051 chenhao_test]# export TEST_PHP_EXECUTABLE=/usr/local/bin/php
添加后,再次运行即正常。
参考文章地址:
开发php扩展:http://www.walu.cc/phpbook/index.md
phpt自动化测试:http://doc.chinaunix.net/php/200903/239813.shtml
- 开发PHP扩展模块
- 开发PHP扩展模块
- 开发PHP扩展模块
- PHP扩展模块开发简解
- Linux下php扩展模块开发
- Linux下php扩展模块开发
- 在Windows上开发PHP扩展模块
- 在Windows上开发PHP扩展模块
- PHP扩展模块结构
- php 动态扩展模块
- php添加扩展模块
- PHP扩展模块安装
- php 扩展模块安装
- 用 C or C++ 开发PHP扩展模块
- 开发php的扩展模块(centos环境下)
- python扩展模块开发
- php扩展安装soap模块
- PHP扩展安装memcache模块
- Extjs的表单提交无法执行success
- TextView的深入使用
- LINQ to SQL语句(18)之运算符转换
- 交叉编译 ffmpeg x264
- LINQ to SQL语句(19)之ADO.NET与LINQ to SQL
- 开发PHP扩展模块
- 搭建LAMP环境
- 测试用例和Bug管理环境搭建(Testlink+Mantis)
- js:判断当前时间和某个时间的比较
- LINQ to SQL语句(20)之存储过程
- Oracle数据如何查看有多少用户连接以及如何kill某个连接
- 在Make过程中输出调试信息
- 数据库--范式
- 网站架构分析网站资料~(转)