环境: window + php + apache + vc6 + cygwin
下载:php二进制文件: php-5.3.10-Win32-VC9-x86
php源码包:php-5.3.10
操作第一步:
PHP源代码生成 main/config.w32.h 详见:http://www.cnblogs.com/shijingjing07/p/5420902.html
操作第二步:
把PHP二进制根目录加入到环境变量下。在cmd命令行,进入PHP源码包中ext文件下。
执行php ext_skel_win32.php --extname=test命令生成扩展骨架。
把PHP二进制包中dev目录php5ts.lib文件复制到你扩展目录test中。
命令执行后,生成如下图示的文件:
操作第三步:
编辑php_test.h内容,找到:
在下面编写:
PHP_FUNCTION(hello); //添加方法
编辑test.c内容,找到:
在里面添加你的要的添加的方法:
PHP_FE(hello,NULL) //最好的跟上面写的一样。
变为:
再找到:
在下面实现你的方法:
简单些。你我需要更深入php内核才能写好的php扩展。
操作第四步:
接下来就是对扩展文件进行编译。
进入扩展的目录,执行以下命令。
msdev test.dsp /MAKE "test - Win32 Release_TS" //命令
如果没有错误,在D:/PHP目录中会产生一个Release_TS目录,php_test.dll就在其中。
操作第五步:
把php_test.dll复制到二进制PHP中的etc文件中.
修改php.ini文件,添加extension=php_test.dll文件。
重启服务。
<?php
echo hello();//test
?>