在哪里编写写php,php扩展编写
php扩展编写
PHP
#扩展2012-04-26 17:18
现在写个简单的 helloworld
1 获取php源码包解压
wget http://
tar
2 进入php源码包ext 目录
cd php-5.2.14/ext
3 生成扩展框架
./ext_skel --extname=wang
实例:
--------------
[root@domain09 ext]# ./ext_skel --extname=wang
Creating directory wang
Creating basic files: config.m4 config.w32 .cvsignore wang.c php_wang.h CREDITS EXPERIMENTAL tests/001.phpt wang.php [done].
To use your new extension, you will have to execute the following steps:
1. $ cd ..
2. $ vi ext/wang/config.m4
3. $ ./buildconf
4. $ ./configure --[with|enable]-wang
5. $ make
6. $ ./php -f ext/wang/wang.php
7. $ vi ext/wang/wang.c
8. $ make
Repeat steps 3-6 until you are satisfied with ext/wang/config.m4 and
step 6 confirms that your module is compiled into PHP. Then, start writing
code and repeat the last two steps as often as necessary.
------------------------------------------------------------------
这个命令会在php-5.2.14/ext目录里面生成 wang目录 并在该目录生成一些文件 其中用到的 是3个文件 一个是config.m4 一个是php_wang.h 一个是 wang.c
实例:
------------------------------------------------------
[root@domain09 wang]# ll
total 64
-rw-r--r-- 1 root root 1975 Jan 20 09:59 config.m4
-rw-r--r-- 1 root root 282 Jan 20 09:59 config.w32
-rw-r--r-- 1 root root 4 Jan 20 09:59 CREDITS
-rw-r--r-- 1 root root 0 Jan 20 09:59 EXPERIMENTAL
-rw-r--r-- 1 root root 2666 Jan 20 09:59 php_wang.h
drwxr-xr-x 2 root root 4096 Jan 20 09:59 tests
-rw-r--r-- 1 root root 5133 Jan 20 09:59 wang.c
-rw-r--r-- 1 root root 496 Jan 20 09:59 wang.php
------------------------------------------------------------
编辑 这三个文件
vi config.m4
把下面这两句前面的的dnl去掉,保存
dnl PHP_ARG_ENABLE(wang, whether to enable wang support,
dnl [ --enable-wang Enable wang support])
vi php_wang.h
找到PHP_FUNCTION(confirm_wang_compiled); /* For testing, remove later. */
,新增一行:
PHP_FUNCTION(wang_test);
保存
vi wang.c
代码后面加上你的c代码
比如
PHP_FUNCTION(wang){
RETURN_STRING("hello world! wangchenglin",1);
}
然后开始编译
[root@domain09 wang]# phpize
[root@domain09 wang]# ./configure --with-php-config=/usr/local/ku6/php/bin/php-config
[root@domain09 wang]# make
然后 wang/modules/下会生成一个wang.so
cp 到php的extensions目录 然后 vi php.ini 加上
extension = wang.so
重启php
phpinfo();
echo wang();
?>
相关文章
在哪里编写写php,php扩展编写相关推荐
- Microbit扩展编写
开发环境准备 (1)安装node和git (2)安装PXT(Programming eXperience Toolkit)工具 npm install -g pxt (3)安装工具链(比较耗时) px ...
- 用c语言编程序输入一个正整数,编写一个程序,输入一个正整数n(假设n7),求1!+2!+3!+4!+……+n!...
编写一个程序,输入一个正整数n(假设n<7),求1!+2!+3!+4!+--+n!以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一 ...
- php5.6扩展编写,php 5.6版本中编写一个PHP扩展的简单示例
php 5.6版本中编写一个PHP扩展的简单示例 这篇文章主要介绍了php 5.6版本中编写一个PHP扩展的简单示例,本文给出扩展实现代码.编译方法.配置方法和使用例子等内容,需要的朋友可以参考下 有 ...
- PHP扩展编写第一步:PHP和Zend介绍
原文地址:http://weizhifeng.net/write-php-extension-part1.html GDC注:该篇文章绝对是PHP扩展开发的首选入门学习资料.非常好! 介绍 如果你在读 ...
- PHP扩展编写、PHP扩展调试、VLD源码分析、基于嵌入式Embed SAPI实现opcode查看
catalogue 1. 编译PHP源码 2. 扩展结构.优缺点 3. 使用PHP原生扩展框架wizard ext_skel编写扩展 4. 编译安装VLD 5. Debug调试VLD 6. VLD源码 ...
- PHP底层原理分析和底层扩展编写
运行原理 http://www.phpchina.com/article-40203-1.html PHP底层开发 可以理解为就是C的开发,那么简单地说如果我们要查看某个PHP函数的底层实现怎么看呢 ...
- 扩展编写jquery插件的方法
比如要扩展验证功能(jquery.validate.js)中的 messages: { required: "This field is required.", remote: & ...
- CUDA、MPI和SU混编,MakeFile文件的编写
本人研究地震勘探的全波形反演,最近在用CUDA+MPI加速反演过程. 写代码过程中最关键的是Makefile文件的编写,也是最难的.下面给出基于SU(Seismic Unix)的CUDA+MPI开发过 ...
- 实时音频编解码之八 频带扩展
本文谢绝任何形式转载,谢谢. 1.4.8 频带扩展 在线性预测应用中,由于极点过于靠近单位圆,合成滤波器可能处于临界稳定的状态,在定点实现中这一问题更加严重,定点的量化和计算中的精度损失可能使得临界稳 ...
最新文章
- matlab估计arma残差,写给你的金融时间序列分析:补完篇
- 深圳大学计算机软件学院明仲,附件一-深圳大学计算机与软件学院.doc
- 关于node js和 npm 版本不匹配的情况
- tf.argmax tf2版本
- 载:看了你能懂几个?
- 单一职责原理讲解coding
- MySQL启动出现The server quit without updating PID file错误解决办法
- MessagePack简介及使用:一种有效的二进制序列化格式
- Debian - RAID5搭建(热备)
- [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能
- 我和Linux,不得不说的故事
- IDEA+Java+SSM+Mysql+Bootstrap+Maven实现网上书城系统
- win10新版蓝牙驱动没有电源管理问题
- input 文件提交 按钮制作
- 【专升本计算机】经典Office 2003专升本复习题(Word、Excel、PowerPoint)
- iOS APP 反编译
- C# 任意开次方,次幂, 开平方,开三次方,平方根, 三次方根
- 图像拼接stitch
- IBTrACS Technical Documentation
- 京东股权众筹平台的玩法和价值