PHP和Java 集成開發(fā)詳解分析 強強聯(lián)合第3/4頁
一個在PHP腳本中的Java類示例
現(xiàn)在你已經(jīng)知道了PHP/Java橋的基礎(chǔ)知識了,可以著手開發(fā)自己的第一個PHP/Java應(yīng)用程序了,這里舉的例子比較簡單,它是一個PHP腳本,實現(xiàn)了+,-,*,/四個基本操作的計算器,Java將會是這個應(yīng)用程序的核心引擎,因為計算結(jié)果是由一個叫做CalculatorBean的Java類提供的,換句話說就是PHP將會把運算對象傳遞給Java函數(shù),然后接收計算結(jié)果,并將結(jié)果顯示給用戶。
CalculatorBean類為運算符定義了四個函數(shù),為返回結(jié)果定義了一個函數(shù),完整的代碼參考
http://javaboutique.internet.com/tutorials/thebridge/listing1.html。
當(dāng)你編譯這個Java源代碼時,結(jié)果會產(chǎn)生一個叫做calculator.jar的.jar文件,將這個文件拷貝到appName/WEB-INF/lib目錄。
接下來就可以編寫PHP腳本來調(diào)用前面的Java類了,使用前面描述的函數(shù),你可以編寫一個calculator.php文件,參考
http://javaboutique.internet.com/tutorials/thebridge/listing2.html。
將calculator.php放如appName目錄,如果你在Tomcat服務(wù)器下測試
(localhost:8080),在瀏覽器的地址欄輸入:
http://localhost:8080/appName/calculator.php,回車,你應(yīng)該會看到如圖1所示的頁面:

JSP頁面中的PHP腳本示例
假如你想使用PHP的隨機函數(shù)在0和最大值之間獲得一個隨機數(shù),你可以象下面這樣使用ScriptEngine.
| 以下為引用的內(nèi)容:
<% e.eval ("<?php function randomNumber($maxim) { return rand(0,java_values($maxim)); }; ?>"); javax.script.Invocable i = (javax.script.Invocable) e; Object result = null; e.eval ((java.io.Reader)null); // flush the output generated by invokeXXX out.println("Random number printed from the servlet: " + result); |
在瀏覽器地址欄中輸入:http://localhost:8080/appName/random.jsp,回車,你可能會看到如圖所示的那樣一個結(jié)果:

相關(guān)文章
利用PHP內(nèi)置SERVER開啟web服務(wù)(本地開發(fā)使用)
PHP 5.4.0起, CLI SAPI 提供了一個內(nèi)置的Web服務(wù)器,這個內(nèi)置的Web服務(wù)器主要用于本地開發(fā)使用,不可用于線上產(chǎn)品環(huán)境,URI請求會被發(fā)送到PHP所在的的工作目錄Working Directory進行處理,除非你使用了-t參數(shù)來自定義不同的目錄2020-01-01
PHP+Apache環(huán)境中如何隱藏Apache版本
以PHP+Apache服務(wù)器環(huán)境為例,給大家講解如何能夠隱藏Apache的版本號以及具體做法。2017-11-11
PHP編碼規(guī)范-php coding standard
標準化問題在某些方面上讓每個人頭痛,讓人人都覺得大家處于同樣的境地。這有助于讓這些建議在許多的項目中不斷演進,許多公司花費了許多星期逐子字逐句的進行爭論。2007-03-03
解決php的“It is not safe to rely on the system’s timezone setti
這篇文章主要介紹了解決php的“It is not safe to rely on the system’s timezone settings”問題的方法,需要的朋友可以參考下2015-10-10

