2012-08-28 60 views
0

想象一下在同一臺服務器上運行不同mysql數據庫的應用程序。 我需要一種在兩個應用程序之間交換數據的方法。 One Application沒有權限訪問其他應用程序的數據庫。 交換僅與後端相關(自動填充),不需要用戶交互。PHP創建API連接2應用程序在同一臺服務器上

什麼是最好和最安全的方式來做到這一點使用PHP?

回答

1

你可以使用命名管道 - 它們非常適合於進程間通信。

http://my.opera.com/zomg/blog/2007/08/29/php-and-named-pipes

你可以嘗試一下在交互式PHP:

​​

讓那個坐在那裏等待,然後打開另一個終端:

Davids-MacBook-Air:~ dearlbry$ php -a 
Interactive shell 

php > $pipe = fopen('test-pipe','r+'); 
php > fwrite($pipe, "Hello World\n"); 
php > fclose($pipe); 

觀看的 「Hello World」在第一個過程中出現。確保你輸入「\ n」,因爲管道被緩衝並且換行符發出刷新信號。

+0

謝謝你,我會試試這個! – sladda

0

您可以使用RESTful API,其中一個應用程序可以將POST和GET數據傳入另一個應用程序。

// From application2.com 

$id = $curl->post('http://application1.com/users/save/', array(
    'name' => 'Matt', 
    'bio' => 'I am a person.' 
)); 

// $id is generated from a DB insert 

$user = $curl->post('http://application1.com/users/bio/', array(
    'id' => $id 
)); 

// $user contains an array or object of information about Matt 
+0

首先感謝。我想知道是否有更好的方法(不使用apache),而這兩個應用程序都在同一臺服務器上? – sladda

+0

授予數據庫相互通話權限嗎? –

+0

我wouldnt問這個問題,如果我能 – sladda

相關問題