2010-03-19 47 views
17

我们在客户机器上运行PHP Web应用程序。对于更新,我们在C中有一些代码,我们希望将其作为本地不透明库与PHP Web应用程序一起包含。从PHP调用C/C++库功能

如何去调用一个C/C++库。函数从PHP?

不能假定由web服务器调用的PHP应用程序具有任何类型的权限来调用exec(),eval()或system()类型的函数来执行C封装器驱动程序,该封装器驱动程序在使用C/C++库,所以它需要从PHP代码中直接使用C库。

回答

7

由圣约翰·约翰逊的答案是正确的。但是你现在也可以使用php-cpp库。它提供了一个在PHP和C++之间更容易的桥梁。有关更多信息,请参见http://www.php-cpp.com

+10

嗨!你必须透露这是你的图书馆。 http://meta.stackexchange.com/a/59302/155739请仔细阅读本网站的常见问题。 – 2014-12-06 22:27:05

1

您可以编译您的代码并使用system,shell_exec或passthru函数来处理输出。大多数网络主机允许您编译C++代码,只需ssh到您的服务器,上传代码并编译它。

1

另一种选择是让C代码作为一个守护进程,始终运行,和PHP脚本连接到它throught UNIX域套接字或一些现有的库进行数据交换。

更多信息here