我用C语言编写了一个小型数据库引擎,该引擎通过读取您在控制台中输入的命令来工作,并输出结果。 我有什么办法可以编写一些PHP代码来将参数发送到控制台,并在不重新启动编译程序的情况下将输出接收回PHP。 有更好的方法吗?
答案 0 :(得分:1)
您说您希望PHP在不重启已编译程序的情况下向程序发送和接收消息。
因此,我认为使用shell_exec或proc_open不会按您期望的方式工作,因为这些命令均会加载已编译程序的新实例。
相反,我建议您研究sockets,以及如何重写数据库引擎以使用这些引擎而不是STDIN / STDOUT。然后,您可以使用PHP的socket functions在应用程序之间进行通信。而且,即使对PHP脚本有多次点击,您也只能在后台运行一个已编译程序的实例。