PHP扩展开发WINDOWS配置

1.下载PHP5.4.27源码

2.下载php-5.4.27-Win32-VC9-x86

3.把它们放到同一个目录下,如php_win_ext目录下

4.将源码中src/win32/build/config.w32.h.in文件拷贝一份到src/main/下,并重命名为:config.w32.h。

5.创建WIN32 DLL项目,空项目即可。记得在项目中附加上LIB,包含目录,一些宏定义(ZEND WIN32必须的PHP_WIN32
ZEND_WIN32等,具体参考ZEND开发文档)。

6.在源码里,需要指定编译的版本号:#define PHP_COMPILER_ID  "VC9"

注意:需要下载PHP的线程安全版,因为我要开发的插件是WIN32界面引擎,需要线程安全。

5.4使用的是VC9,也即是VS2008,可以不用创建骨架代码,手动创建即可。

下面在网上抄一段代码,本人编译后,正常显示


/**
* 示例代码
**/
#define PHP_COMPILER_ID "VC9"
#include "php.h"
#include "ext/standard/info.h"

ZEND_FUNCTION(example);
PHP_MINFO_FUNCTION(example);

zend_function_entry use_functions[] = {
ZEND_FE(example, NULL)
{NULL, NULL, NULL}
};

zend_module_entry example_module_entry = {
STANDARD_MODULE_HEADER,
"PHP Extension Example",
use_functions,
NULL, NULL, NULL, NULL,
PHP_MINFO(example),
"1.0 beta",
STANDARD_MODULE_PROPERTIES
};

ZEND_GET_MODULE(example);

ZEND_FUNCTION(example) {
bool param;

if(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &param) == FAILURE) {
E_ERROR;
return;
}

if(param) {
php_printf("Example parm is true");
} else {
php_printf("Example parm is false");
}

return;
}

PHP_MINFO_FUNCTION(example) {
php_info_print_table_start();
php_info_print_table_header(2, "PHP Extension Example support", "enabled");
php_info_print_table_row(2, "Version", "1.0 beta");
php_info_print_table_end();
}


<?php

echo example(true);
//输出: Example parm is true

?>

记得在php.ini加上这个插件,编译成功后,即表示已经入门了,可以慢慢添加其它功能扩展函数。

时间: 2024-10-07 00:39:33

PHP扩展开发WINDOWS配置的相关文章

php扩展开发-INI配置

php.ini文件是用来保存各项扩展配置的文件,每个扩展都或多或少需要有一个定制化的配置,ini文件是一个很好的保存配置的方式,我们来看下怎么在自己的扩展里,使用到ini的配置功能 //创建ini的配置项#include "php_ini.h" //ini配置的创建和全局变量的类似,通过宏定义创建一个结构体,来保存INI的配置项//参数说明://1,配置名称//2,配置值//3,作用域//4,修改时的回调函数,可以为NULL PHP_INI_BEGIN() PHP_INI_ENTRY(

Android开发环境配置(以windows为例)

Android开发环境配置工具  如果你准备从事Android开发,那么无论选择在eclipse下开发,还是选择在AndroidStudio下开发,都可以参照以下步骤进行Android开发环境的配置. Android开发环境配置过程 1.准备笔记本或台式机 使用笔记本还是台式机,视个人需求而定,但我要强调的是在配置上不要手软,要舍得下手.一台流畅的电脑,会让你在枯燥的编程中不至于抓狂. 官方推荐的AndroidStudio或eclipse运行环境对电脑配置要求很低,现在市面上的电脑基本都可以达到

Go语言Eclipse开发环境配置-windows

1.首先安装eclipse,选择一个适合的版本就好,解压即可 http://www.eclipse.org/downloads/ 2.下载go语言安装包 官网地址 :http://www.golang.org/ 官网地址有时候打不开,百度云盘下载go1.2安装包  http://pan.baidu.com/s/1c0Gf4UO#dir/path=%2FSoft%2FGoLang  32 64位都有 一路Next cmd输入go version 看到这个就安装好了,环境变量什么的会自动配置好的,唯

windows下spark开发环境配置

http://www.cnblogs.com/davidwang456/p/5032766.html windows下spark开发环境配置 --本篇随笔由同事葛同学提供. 特注:windows下开发spark不需要在本地安装hadoop,但是需要winutils.exe.hadoop.dll等文件,前提是你已经安装了eclipse.maven.jdk等软件 spark支持jdk版本建议是1.8及以上,如果开发spark建议将jdk编译版本设置为1.8 我选择的spark是spark-1.4.0

【转】cocos2d-x windows开发环境配置

声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级后的cocos2d-x有了一些变化,目前的博文还没有关于Cocos2d-x 2.2.1最新版搭建Android交叉编译环境组建的说明,所以我这几天研究了一下,现在将具体的搭建方法分享出来,也给自己学习Cocos2d-x做个笔记. 参考博文: http://www.cnblogs.com/lhming/archive/2012/06/27/2566460.htmlhttp://www.cnblogs.com/l

[傻瓜版] Redis在Windows下的开发环境配置步骤

redis默认运行在unix体系下,windows无法直接运行官方版.以下是几种解决方案, 一)Windows移植版.启动速度飞快,优先推荐使用. a) 2.6.12 是稳定版,我用来64位版做开发环境,数个月未发现重要问题.  下载地址: https://github.com/MSOpenTech/redis/tree/2.6/bin/release b) 2.8.4 是3月24发布的最新版,此版本运行时会临时占用内存大小的硬盘空间,下载地址: https://github.com/MSOpe

基于Spring的可扩展Schema进行开发自定义配置标签支持

一.背景 最近和朋友一起想开发一个类似alibaba dubbo的功能的工具,其中就用到了基于Spring的可扩展Schema进行开发自定义配置标签支持,通过上网查资料自己写了一个demo.今天在这里进行和大家分享,也记录下方便以后复习备忘. 二.demo测试环境 1.JDK1.7 2.spring 4.2.5.RELEASE 3.基于Maven 4.开发工具Eclipse 三.项目介绍 1.实现步骤分析 [1].设计配置属性并开发JavaBean. [2].编写xsd文件. [3].编写Nam

Windows下Android开发环境配置

最近在配置安卓. 还是拿舍友没带回家的手机.. 自己手机是WP.. 搞了半天搞好了. 叹了口气,要是有人这样教我就好了,少走好多弯路. 废话不说,步骤如下" 一.安装JDK 为啥要安装JDK就不说了吧?java写安卓.. 传送门: http://www.oracle.com/technetwork/java/javase/downloads/index.html 安装完后,配置环境变量: 右击 "我的电脑"->属性->高级->环境变量->系统变量-&g

windows下的Nodejs及npm的安装、常用命令,Nodejs开发环境配置

第一步:下载Nodejs并安装 官方下载地址:https://nodejs.org/en/,我选择的是长期支持版本v4.47,安装时只要一直下一步就ok了 安装完成后可以使用cmd(win+r然后输入cmd进入)测试下是否安装成功.方法:在cmd下输入node -v,出现下图版本提示就是完成了Nodejs的安装. 我们打开安装目录: 发现nodejs目录下有一个node.exe,它是干嘛的? 第二步:npm安装 v0.63之前,在Node安装过程中,实际还需要安装npm,到v0.63时Ndejs