2013-03-31 26 views
2

我在C++上開發了一個應用程序。我想將我的網站連接到C++軟件。如何讓C++應用程序從PHP接收數據?

我想讓網站發送一個字符串或圖像到C++應用程序;那麼在C++接收到字符串/圖像後,它將處理它並將輸出返回到網站。

我的問題是如何讓網站(託管在我的本地服務器上)發送一條直接消息給我的PC上託管的C++應用程序。

+0

這似乎是很多可能的答案過於寬泛的問題。你想通過序列化字符串或圖像來解決什麼問題? –

回答

1

系統無關的進程間通信可以使用套接字來實現。在您的C++應用程序中監聽客戶端,並使用PHPs socket API連接到它。

1

一個選項可能是在您的C++程序中開發一個小型HTTP服務器。 在HTTP部分查看this

0

如果這是在一臺單獨的Windows機器上,那麼命名管道可能對您有用 。如果C++應用程序與服務器應用程序位於相同的物理服務器中,那麼命名管道就是很好的解決方案。在這種情況下,操作系統只會在進程間移動內存,所以它可能非常快。 look here

0

如果您可以讓您的應用程序充當Web服務器或CGI應用程序。那麼你所需要做的就是:

file_get_contents('http://localhost/path/to/c/exe?parameter=param'); 
    //You could use curl as well, I used file_get_contents for simplicity 

你也可以使用套接字。

第三個選擇是從PHP與反引號來執行你的C++ EXE:

$result=`myapp.exe`; 
+0

這與OP想要的完全相反。他想將數據從PHP應用程序發送到C++應用程序。 – HamZa

+1

哼,我想我誤讀了。我想在這種情況下,他可以使用系統調用來執行php:system('php phpfile.php'); 。從技術上講,他也可以使用套接字,但這樣會使得調用複雜一點 –

+0

,在重新閱讀之後,該操作似乎想要兩種方式,因此它可能是我猜想的混合。 –

相關問題