2011-04-23 25 views
0

我有一個純粹的,工作的PHP應用程序,它有自己特定的和複雜的MSSQL數據庫。Rails中PHP應用程序的接口

在Rails中,我想從沒有任何SQL適配器的應用程序接收數據,因爲直接從Rails運行查詢太複雜了。

例如,有一個getCustomersWithAccounts方法它返回客戶端數組的PHP數據庫。我怎樣才能從我的Rails應用程序獲得這個數組?

也許使用PHP-CLI並運行/usr/bin/php5 get_customers.php,它將打印JSON數組。但是如何從Rails實現呢?

現在我使用共享的memcached密鑰。

+2

您是否瞭解[find_by_sql](http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-find_by_sql)?如果你不喜歡它,只需在PHP中構建一些返回JSON的HTTP REST API並通過rails中的[Active Resource](http://api.rubyonrails.org/classes/ActiveResource/Base.html)獲取它。 – retro 2011-04-23 22:59:37

回答

2

使用共享memcached密鑰的解決方案是將數據從一個傳輸到另一個的一種方法。

另一個可能給你更多靈活性的解決方案是讓Rails應用程序通過HTTP查詢PHP應用程序。基本上你會爲自己構建一個web服務API,你可以返回JSON或XML,或者任何對Rails應用程序最有用的格式。