社区
基础编程
帖子详情
如何开发供PHP调用的so模块?
一个懂技术的项目经理
2004-11-24 10:29:21
我自己开发了一个so给php加载,但是提示
Invalid library (maybe not a PHP library)
是不是开发要有一定的规范?应该符合什么样的规范呐?
...全文
115
7
打赏
收藏
如何开发供PHP调用的so模块?
我自己开发了一个so给php加载,但是提示 Invalid library (maybe not a PHP library) 是不是开发要有一定的规范?应该符合什么样的规范呐?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
clansoft
2004-12-19
打赏
举报
回复
期待答案
上边的代码我试过了,php.net 给的编译方法根本不能通过,路经都不相符,还会报少头文件
alloca.h 等等.
raid79
2004-11-24
打赏
举报
回复
关注
boris2002
2004-11-24
打赏
举报
回复
手册里的例子(我也看不明白):
/* include standard header */
#include "php.h"
/* declaration of functions to be exported */
ZEND_FUNCTION(first_module);
/* compiled function list so Zend knows what's in this module */
zend_function_entry firstmod_functions[] =
{
ZEND_FE(first_module, NULL)
{NULL, NULL, NULL}
};
/* compiled module information */
zend_module_entry firstmod_module_entry =
{
STANDARD_MODULE_HEADER,
"First Module",
firstmod_functions,
NULL,
NULL,
NULL,
NULL,
NULL,
NO_VERSION_YET,
STANDARD_MODULE_PROPERTIES
};
/* implement standard "stub" routine to introduce ourselves to Zend */
#if COMPILE_DL_FIRST_MODULE
ZEND_GET_MODULE(firstmod)
#endif
/* implement function that is meant to be made available to PHP */
ZEND_FUNCTION(first_module)
{
long parameter;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", ¶meter) == FAILURE) {
return;
}
RETURN_LONG(parameter);
}
-神仙-
2004-11-24
打赏
举报
回复
手册里有说明的
只是我也看着不怎么明白
522jack
2004-11-24
打赏
举报
回复
不知道。
ezdevelop
2004-11-24
打赏
举报
回复
少个
#if COMPILE_DL_YOUREXT
ZEND_GET_MODULE(yourext)
#endif
一个懂技术的项目经理
2004-11-24
打赏
举报
回复
高手高手快快现身帮帮小弟哟.
php
如何
调用
当地的动态库,
php
调用
so库和a库方法
一个方法是写一个
php
模块
(
php
extension),在
php
中
调用
该
模块
内的函数,再通过该
模块
来
调用
so中的函数。下面做一个简单的例子,使用的操作系统是Fedora Core 6。首先做一个简单的so文件:/*** hello.c* To compile, ...
php
如何生成so文件怎么打开,如何利用
php
调用
so库文件中的代码
一个方法是写一个
php
模块
(
php
extension),在
php
中
调用
该
模块
内的函数,再通过该
模块
来
调用
so中的函数。下面做一个简单的例子,使用的操作系统是Fedora Core 6。首先做一个简单的so文件:/*** hello.c* To compile, ...
利用
php
调用
so库文件中的代码
再通过该
模块
来
调用
so中的函数。下面做一个简单的例子,使用的操作系统是Fedora Core 6。 首先做一个简单的so文件:/** * hello.c * To compile, use following commands: * ...
PHP
扩展
开发
之动态加载so
模块
与静态重编译
PHP
(上)
动态加载so
模块
:利用ext_skel工具编译生成so
模块
,修改
php
.ini文件,动态加载即可 静态编译:将编写的
模块
静态编译到
PHP
,需要重新编译
PHP
假设要编写一个my_dynamic扩展,
调用
my_dynamic函数后输出字符串“The ...
php
调用
第三方so,
php
调用
c语言编写的so动态库
PHP
除了使用扩展库的方式
调用
c函数,还可以通过socket通信的方式。这里介绍前者。第一步: 环境搭建1. 先看本机是否已经安装了较低版本的
php
#find /usr -name "
php
"或者rpm -aq | grep
php
如果存在,就使用rpm命令等...
基础编程
21,893
社区成员
140,347
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章