我创建了一个需要用户输入的c ++程序。我想从php调用这个程序,并在我的网页上使用该程序的输出。 由于c ++程序需要花费大量时间来初始化,我希望它在后台运行并在调用时响应php脚本。然后php脚本应该获取输出并将其显示在我的页面上。 可以这样做吗?
答案 0 :(得分:1)
当然,它可以完成,但您可能必须编写两个C或C ++程序,一个在后台运行,另一个由PHP程序启动,每次需要一些信息时。虽然有可能只使用PHP来制定一个方案 - 但我没有深入研究过它。无论哪种方式,我将使用“请求者”一词来表示“请求信息”的进程(PHP或C),以及实际用信息响应的进程的“服务进程”。
要在请求者和后台进程之间进行通信,您需要使用一些IPC(进程间通信)机制。有很多选择。在这种情况下,命名管道听起来像是一个合理的解决方案,并且命名管道在大多数操作系统中都可用(以及在例如Boost库中抽象,以允许更便携的解决方案,如果需要的话)。
所以,基本原则是:
对于上述7个步骤中的每个步骤当然有许多“小步骤”,但总的来说,它几乎就是你想要做的。