配置config.w32
如果直接在原来为c的扩展中直接引用C++语法会报错:
fatal error C1189: #error: The C++ Standard Library forbids macroizing keywords. Enable warning C4005 to find the forbidden macro.
这里我们配置config.w32
文件,将
EXTENSION("my_function", "my_function.cc");
改为:
EXTENSION("my_function", "my_function.cc",null,"/D _XKEYCHECK_H /D /EHsc");
修改扩展源码
1.找到my_function.cc
文件将#include "php.h"
用extern "C" {}
包住:
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
extern "C" {
#include "php.h"
}
#include "php_ini.h"
#include "ext/standard/info.h"
#include "php_my_function.h"
2.在php_my_function.h
添加#include <iostream>
3.添加测试方法
测试
重新编译扩展后,运行结果: —End—
迭代
- 2019年01月28日 13:11 初稿