我有一個項目,它有一個使用C++編寫的程序(總是要運行)以及一個Apache Web服務器和Windows PC上的PHP。現在我想將從PHP客戶端獲取的參數發送到C++程序並獲得答案,但我無法弄清楚如何去做。我已經看過PHP中的exec()和shell_exec(),但他們只能執行程序,我想調用C++中的方法並將返回值發回給PHP。如何在Windows上與C++和PHP進行通信?
是將臨時結果存儲在文件中的最佳方式,還是您有更好的想法?
我有一個項目,它有一個使用C++編寫的程序(總是要運行)以及一個Apache Web服務器和Windows PC上的PHP。現在我想將從PHP客戶端獲取的參數發送到C++程序並獲得答案,但我無法弄清楚如何去做。我已經看過PHP中的exec()和shell_exec(),但他們只能執行程序,我想調用C++中的方法並將返回值發回給PHP。如何在Windows上與C++和PHP進行通信?
是將臨時結果存儲在文件中的最佳方式,還是您有更好的想法?
打開套接字或使用其他一些OS提供的互操作機制。 (我會堅持使用TCP/IP套接字。)
另一種解決方案是使用命名管道。
這裏有一個教程如何: http://my.opera.com/zomg/blog/2007/08/29/php-and-named-pipes
另一個答案: Interprocess Communication using Named Pipes in C# + PHP
使命名管道爲PHP http://www.phpbuilder.com/manual/function.posix-mkfifo.php
請注意,在Windows上無法從PHP創建命名管道。但是,讀取和寫入現有的管道應該可以正常工作。 – ladenedge
謝謝你,我沒有想到這一點! – bpn
@bpn:很明顯;) –