是否可以从Linux服务器调用php中的C库中的函数?

时间:2011-08-22 23:20:40

标签: php c++ c linux

对不起,这是一个全新的问题,但有一个非常好的C库可用,我想用它调用它的功能。但是我有一个linux服务器。以下是规格:

  • Apache版本2.2.17
  • PHP版本5.2.17
  • MySQL版本5.1.56-community-log
  • 架构x86_64
  • 操作系统linux
  • 内核版本2.6.32-29.1.BHsmp

如果C库位于linux服务器上,我是否可以在php中调用C库中的函数(例如使用php exec())?如果是这样,库需要使用gcc重新编译?

非常感谢!

1 个答案:

答案 0 :(得分:1)

有了那些规格。你基本上有两个选择。

  1. 创建一个包装库,它充当PHP扩展,使您可以直接从PHP调用C函数,例如mylib_awesome_func('hello');

  2. 创建一个命令行实用程序,它充当C库的接口,然后使用PHP中的exec()调用此工具。

  3. 选项一可以被认为更“干净”,但肯定更难,而选项二可能非常容易,但在某些情况下可能不可能,这取决于需要来回传输/操纵什么类型的数据图书馆。