2013-02-19 61 views
0

我有一個使用PHP(Joomla)實現的系統。現在客戶想要集成一個SMS網關。不幸的是,SMS網關不支持PHP。它是用Java編寫的,所有的例子都是用JAVA編寫的。如何在PHP中執行java函數/腳本

我應該包括webservices‐rt.jar到我的程序並運行一個腳本如下。

lk.mobitel.esms.User user = new lk.mobitel.esms.User(); user.setUsername(「TestUser」); 
user.setPassword(「Password」); 
lk.mobitel.esms.test.ServiceTest st = new lk.mobitel.esms.test.ServiceTest(); 
System.out.println(st.testService(u)); 

據我瞭解,我可以使用下面PHP

運行 .jar作爲
<?php exec("java -jar filename.jar arguments",$output); ?> 

我如何在PHP中運行Java腳本像上面?可能嗎?有沒有一種方法來橋接PHP和JAVA?我想要的是在PHP中運行JAVA,否則我會說這兩者之間的溝通。

+0

運行JAR時出現了什麼問題? – cowls 2013-02-19 09:24:21

+0

我有一個Apache服務器和PHP系統。我想要的是在PHP中運行JAVA,否則我會說這兩者之間的溝通。 – Techie 2013-02-19 09:25:37

+0

您可以隨時閱讀Java,找出它在做什麼以及它在哪裏發佈並使用PHP中的cURL重新創建帖子? Wireshark非常適合捕獲HTTP流量..? 您正在使用哪個SMS網關?我爲www.txtNation.com工作,我們可以幫助你! – Marc 2013-02-19 09:26:48

回答

0

我從來沒有這樣做過,但PHP手冊給PHP5的PHP-Java Bridge的鏈接爲PHP/Java Bridge。如果這是你在找什麼?

0

不可能將PHP和Java結合到同一個腳本中並讓它們在一次運行中執行。

如果您正在接近PHP,那麼您的exec方法就是要走的路。但你應該使用passthru作爲執行不返回任何東西。通過passthru,你可以獲得你的java命令的shell響應並相應地執行。

0

有沒有辦法橋接PHP和JAVA?我想要的是在PHP中運行JAVA,否則我會說這兩者之間的溝通。

答案很簡單:使用數據交換層

大橋。 :)

提示(超級簡單的語言):我最喜歡的webservice使用PERL來處理他們的腳本,我使用XML獲取它們。 Groupon是在RoR上製作的,但是我很高興地得到了推文,這要歸功於他們輸出JSON的API。

簡單嗎? :)