我创建了以下函数的.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
>
我在网上看过各种教程,但没有明确的解释。有人可以链接到一些教程或帮助我解决这个问题吗?
答案 0 :(得分:2)
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