从PHP调用C / C ++库函数

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

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

不能认为由Web服务器调用的PHP应用程序具有任何types的权限来调用exec(),eval()或system()types的函数来执行C封装器驱动程序,该C封装器驱动程序又使用C / C ++库,因此需要从PHP代码中直接使用C库。

看一下关于扩展编写的一些Zend教程,特别是这个“在PHP扩展中包装C ++类”

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

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

您可以使用ZEND将您的C代码插入到PHP中。

http://php.net/manual/en/internals2.ze1.zendapi.php

另一个select是将C代码作为守护进程,始终运行,并通过unix域套接字或某个现有的库来交换数据。

更多信息在这里