环境: 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

?>

在Windows上开发PHP扩展模块的更多相关文章

  1. 开始在Windows上开发Android

    介绍 鉴于您正在阅读这篇文章,您很可能已经知道android是什么了.可能.在科幻小说和电影中,机器人本质上是具有拟人化特征的机器人.还记得<星球大战>里的C-3PO吗?那<星际迷航 ...

  2. Erlang在Windows上开发环境搭建全过程讲解目录

    我会按照下面的列表来一步一步讲解,在windows来开发Erlang所用到的一些工具,和知识.我会不停的添加和修正. Erlang运行时环境 Erlang开发工具选择 Rebar来构建,编译,测试,发 ...

  3. 在WINDOWS上开发IOS应用的方法

    1,虚拟机上安装MAC系统,里面装XCODE 2,WINDOWS上安装code blocks,这个IDE可以直接在WIN上编译XCODE工程: 最新的IOS在windows环境下编译环境搭建记录

  4. 如何在Windows上搭建Android开发环境

    Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...

  5. 在Windows上运行Linux

    在Windows上运行Linux 之前了解过一些适用于linux的Windows子系统,最近又听人提起,于是在自己的Windows 10专业版上安装了一个Ubuntu.运行起来还真方便,以后在wind ...

  6. 在 Windows 上可以用 Docker 吗?

    作者:陈计节 个人博客:https://blog.jijiechen.com/post/docker-on-windows/ Docker,或者准确一点说,容器技术,在近几年里几乎成为了应用分发和集群 ...

  7. 关于WSL(Windows上的Linux子系统)的简单介绍及安装

    WSL,Windows Subsystem for Linux,就是之前的Bash on [Ubuntu on] Windows(嗯,微软改名部KPI++),在wsl环境下我们可以运行一些Linux程 ...

  8. Windows上安装Mac OS

    在windows上开发ios程序,是一件比較痛苦的事情.由于: 开发android程序,使用eclipse.eclipse有windows版同一时候也有mac版,所以mac上开发android程序和w ...

  9. WSL(Windows上的Linux子系统)

    WSL(Windows上的Linux子系统) WSL,Windows Subsystem for Linux,就是之前的Bash on [Ubuntu on] Windows(嗯,微软改名部KPI++ ...

随机推荐

  1. eclipse使用egit插件

    本来想用myeclipse,奈何试过网上所列的常用方法,都无法成功安装egit插件.只得转到eclipse.话说eclipse不仅是免费的,启动也较myeclipse更为迅速,安装插件也非常顺利.使用 ...

  2. CSDN日报20170310——《假如我是一行代码》

    [程序人生]假如我是一行代码 作者:henry-hacker 我们不止一次在生活中听到"假如我如何如何,我会如何如何"的句式.而这种句式说出来的一般意义无非就是让我们站在还有一个角 ...

  3. OpenGL学习(hello)

    #include <gl/glut.h> void display(void) { glClear(GL_COLOR_BUFFER_BIT); // 清除颜色缓冲以及深度缓冲 glColo ...

  4. python之函数用法locals()

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法locals() #locals() #说明:查找局部变量,返回一个名字/值对的字典对 ...

  5. 小程序四:视图之WXSS

    WXSS(WeiXin Style Sheets)是MINA设计的一套样式语言,用于描述WXML的组件样式. WXSS用来决定WXML的组件应该怎么显示. 为了适应广大的前端开发者,我们的WXSS具有 ...

  6. iOS获取手机型号,Swift获取手机型号(类似iphone 7这种,检测机型具体型号)

    获取手机设备信息,如name.model.version等, 但如果想获取具体的手机型号,如iphone5.5s这种,就需要如下这种(含Swift和OC两种写法) Swift建议添加到extensio ...

  7. HDUOJ---1754 I Hate It (线段树之单点更新查区间最大值)

    I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  8. HDUOJ----John

    John Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submis ...

  9. 有用的git片段

    世界上知识那么多,又岂是人力所能穷尽,于是术业有专攻.对于git,有用的命令片段其实非常少,而命令却是非常多.于是,掌握git常见的用法就足够了.不要在语句级别上记忆git命令,在代码片段级别上记忆g ...

  10. 【jQuery】页面顶部显示的进度条效果

    <!Doctype html> <html> <head> <title>页面顶部显示的进度条效果</title> <meta htt ...