• 技术文章 >php教程 >php手册

    详解Window7 下开发php扩展,详解window7php扩展

    2016-06-13 08:48:23原创587

    详解Window7 下开发php扩展,详解window7php扩展


    一、首先查看phpinfo() 信息

    PHP Version 5.4.34
    Zend Extension Build API220100525,TS,VC9
    PHP Extension Build API20100525,TS,VC9
    Thread Safety enable

    线程安全,VC9编译,5.4.34版本

    二、开发前准备工作

    php 5.3-5.4 :Visual C++ 9.0(Visual Studio 2008)
    安装Cygwin(下载地址:http://www.cygwin.com/),虚拟linux环境
    php编译后的程序和编译前的源码(下载地址:http://windows.php.net/download/)
    编译后的程序路径:php-5.4.45-Win32-VC9-x86\
    编译前的源码路径:php-5.4.45-src\
    下载php sdk文件,http://windows.php.net/downloads/php-sdk/

    1、解压php-sdk-binary-tools-20110915.zip里面的文件,将bison.exe所在的bin目录添加的系统path

    将php-5.4.45-Win32-VC9-x86\dev\php5ts.lib 复制到php-5.4.45-src\Release_TS\php5ts.lib
    新建php-5.4.45-src\main\config.win32.h,内容如下:
    #define SIZEOF_LONG 4
    #define PHP_COMPILER_ID "VC9"
    "VC9"对应VC9

    2、找到php源码目录, php-5.4.45-src\ext\ext_skel_win32.php

    /*
    This script can be used on Win systems
    ) Make sure you have CygWin installed
    ) Adjust the $cygwin_path to match your installation
    ) Change the environment cariable PATHEXT to include .PHP
    ) run ext_skel --extname=...
    the first time you run this script you will be asked to
    associate it with a program. chooses the CLI version of php.
    */
    $cygwin_path = 'D:\Program Files\cygwin\bin'; 

    这里改成你的cygwin安装目录。

    3、运行cmd,进入php源码目录, php-5.4.45-src\ext,运行命令php ext_skel_win32.php --extname=myphpexs


    记得将php.exe 所在目录加入path,--extname=你的扩展名字,

    若成功会再ext目录下生成myphpexs文件夹,内容如下


    4、用vs2008 打开myphpexs.dsp, 解决方案配置改为Release,执行生成命令

    顺利的话将生成php_myphpexs.dll文件,我的将php_myphpexs.dll生成再了php源码根目录的Release_TS文件夹中

    5、将php_myphpexs.dll放到你php的扩展目录,再php.ini中加上extension=php_myphpexs.dll

    6、新建php脚本文件test.php,内容如下

    复制代码 代码如下:
    echo confirm_myphpexs_compiled('test');

    7、运行测试文件,出现如下内容说明,成功了

    复制代码 代码如下:
    Congratulations! You have successfully modified ext/myphpext/config.m4. Module 23 is now compiled into PHP.

    8、confirm_myphpexs_compiled是建立扩展是自带的册数函数,在编辑你自己的扩展内容时,可以删除改函数

    您可能感兴趣的文章:

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:PHP使用Pear发送邮件(Windows环境),pear发送邮件 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)• PHP执行zip与rar解压缩方法实现代码• 转载:分页原理+分页代码+分页类制作• php session 预定义数组_php基础• PHP实现通过get方式识别用户发送邮件的方法
    1/1

    PHP中文网