如何使用php脚本从.so文件调用函数



我已经为以下函数创建了.so文件:

main.cpp:

#include<stdio.h>
#include "test.h"
int main()
{
int a=hello();
printf("%d",a);
return 0;
}

test.h

int test()
{
 int a=5,b=10,c;
 printf("Hi");
 c=a+b;
 return c;
}

现在我为上面的程序创建了共享库文件main.so,并希望从php脚本中调用hell()函数。

p1.php

<?php
// Call to test function in main.cpp
>

我在网上看到了各种教程,但并没有明确的解释。有人能提供一些教程的链接或帮助我解决这个问题吗?

Sara Goleman的书非常全面地介绍了如何开发php扩展(包括您的主题)。

这是一篇介绍性文章。

http://devzone.zend.com/303/extension-writing-part-i-introduction-to-php-and-zend/

我读过她的书,它完全涵盖了这个问题。

http://www.amazon.com/dp/067232704X

如果这不是一个简单快捷的答案,我很抱歉。然而,PHP API并不完全是直接的。如果没有关于每个组件的进一步背景信息,这就没有什么意义。一旦我有了它,我就能清楚地看到PHP API的开发。

或者,如果您正在寻找不同的方法,则可能需要使用RabbitMQ或其他消息队列服务来调用c++应用程序并从(可选)持久性c++进程来回发送消息。

以下是我发现有用的进一步链接:

http://devzone.zend.com/1435/wrapping-c-classes-in-a-php-extension/

http://talks.somabo.de/200903_montreal_php_extension_writing.pdf

http://simonholywell.com/post/2010/09/15-excellent-resources-for-php-extension-development.html

http://blog.golemon.com/2006/06/what-heck-is-tsrmlscc-anyway.html

http://www.php.net/manual/en/internals2.php

相关内容

  • 没有找到相关文章

最新更新