【问题标题】:Calling C/C++ library function from PHP [closed]从 PHP 调用 C/C++ 库函数 [关闭]
【发布时间】:2010-03-19 17:43:24
【问题描述】:

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

如何调用 C/C++ 库。 PHP的函数?

不能假设由 Web 服务器调用的 PHP 应用程序具有调用 exec()、eval() 或 system() 类型的函数以执行 C 包装驱动程序的任何类型的权限使用 C/C++ 库,因此需要在 PHP 代码中直接使用 C 库。

【问题讨论】:

    标签: php c++


    【解决方案1】:

    看看一些关于扩展编写的 Zend 教程,尤其是这个"Wrapping C++ Classes in a PHP Extension"

    【讨论】:

    【解决方案2】:

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

    【讨论】:

    【解决方案3】:

    另一种选择是将 C 代码作为守护程序,始终运行,并且 php 脚本通过 unix 域套接字或某些现有库连接到它以交换数据。

    更多信息here

    【讨论】:

      【解决方案4】:

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

      【讨论】:

        【解决方案5】:

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-06-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-12-19
          • 2012-11-26
          • 2015-02-10
          相关资源
          最近更新 更多