windows 系统 C语言写PHP简单扩展

     PHP是纯C语言写出来的,其实也可以理解为PHP是C语言的接口,我使用PHP就是使用了C语言的接口,我们完全可以用C写PHP的扩展,准备工作,PHP分为VC6/VC9/VC11,高版本的C语言需要VC2008,但是VC2008太大我不想去安装,于是就选择了VC6,这么的话PHP只能选择5.3版本的,下面开始工作准备:

1.下载PHP源码和其他工具,我已经上传好了下载链接http://download.csdn.net/detail/gaoxuaiguoyi/9529484

2.进入你解压的文件下面打开docs窗口:buildconf


3.设置临时的环境属性:set path=%path%;D:/php-5.3.8/bin

中间必须安装了VC6.0,工具在压缩包里面自己安装,如果提示缺少mspdb60.dll就解压(如果是32位就放到C:\Windows\System32下面,64位放到C:\Windows\SysWOW64)

4.执行:cscript /nologo configure.js --with-php-build="../php5.3.8" --without-libxml --disable-odbc  

5.进入ext目录下面执行:php ext_skel_win32.php  --extname=myfirstdll

6.用编辑器打开php_myfirstdll.h在PHP_FUNCTION(confirm_myfirstdll_compiled);下面加入PHP_FUNCTION(sayHello);

7.打开myfirstdll.c在PHP_FE(confirm_myfirstdll_compiled, NULL)下面加入PHP_FE(sayHello,NULL)

8.编写sayHello方法在PHP_FUNCTION(confirm_myfirstdll_compiled)下面添加:

PHP_FUNCTION(sayHello)
{
	char *arg = NULL;
	int arg_len, len;
	char *strg;

	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) {
		return;
	}
	php_printf("Hello!!!,%s"); 
}
9.找到myfirstdll.dsp用VC6.0打开,点击build(或者F7直接生成 myfirstdll.dll)

在点击之前要去选择编译环境,我们选择release模式:

点击组建会有移除工程配置,我们选择Release就可以了.




10.找到dll文件在解压的目录下面会生成Release_TS


就可以找到生成的dll文件了,进行测试要用5.3版本的php去测试否则是不行的,下载php-5.3.5-Win32-VC6-x86版本即可,把扩展加入ext,在PHP.ini加入extension = myfirstdll;

写一个test.php文件:

<?php


sayHello('sahaks');

执行:


至此已经简单的完成了,C语言在windows下面如何写扩展,如果在linux下面会更方便,以后会在linux下面进行测试。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值