php如何呼叫java方法
php呼叫java方法:先下載「php-java-bridge_6.2.1_documentation.zip」並執行JavaBridge;然後在www目錄下新建test.php;最後在PHP中呼叫自訂的JAVA類別即可。
#1. PHP呼叫JAVA方法
1.1. 軟體需求
- 下載php-java-bridge_6.2.1_documentation.zip,下載位址為:http://php-java-bridge.sourceforge .net/pjb/download.php
- JavaBridge.jar:將上面的php-java-bridge_6.2.1_documentation.zip解壓縮得到一個JavaBridge.war,將JavaBridge.war重新命名為JavaBridge.jar,再次用WinRAR將JavaBridge.jar解壓縮到JavaBridge目錄,在JavaBridge\WEB-INF\LIB裡面可以找到JavaBridge.jar和Lucene.jar。
- JDK:JavaBridge是由Java語言實現的,所以必須安裝JDK實作來對jar檔執行提供支援。並配好環境變數。
1.2. 執行JavaBridge
- 雙擊執行JavaBridge\WEB-INF\LIB裡的JavaBridge.jar,應該會彈出一個可以選擇的對話框,如果沒有彈出,是因為沒有安裝JDK或檔案關聯錯誤,解決方法是安裝JDK或執行「start javaw -jar JavaBridge.jar」(內容儲存到*.bat裡面,而*.bat與JavaBridge.jar同一個目錄)替代雙擊。彈出對話框後不用選擇,直接點選「確定」即可。正確如下:
1.3. 測試JavaBridge
- 在www目錄下新建test.php,內容如下:
require_once("java/Java.inc"); $system = new Java('java.lang.System'); $s = new Java("java.lang.String", "php-java-bridge config...<br><br>"); echo $s; print 'Java version='.$system->getProperty('java.version').' <br>'; print 'Java vendor=' .$system->getProperty('java.vendor').' <br>'; print 'OS='.$system->getProperty('os.name').' '. $system->getProperty('os.version').' on '. $system->getProperty('os.arch').' <br>'; $formatter = new Java('java.text.SimpleDateFormat', "EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz"); print $formatter->format(new Java('java.util.Date')).' <br>'.' <br>';
- 找到JavaBridge\WEB-INF\LIB裡的JavaBridge.jar,解壓縮JavaBridge.jar可以在JavaBridge\META-INF裡面找到java目錄,完全拷貝java目錄與test.php同目錄,然後運行:http://localhost/test.php,會有以下內容輸出,說明JavaBridge安裝成功了
#
1.4. 在PHP中呼叫自訂的JAVA 類別
- 先建一個測試類Test.java:
public class Test { private String name = ""; // setter and getter public void setName(String name) { this.name = name; } public String getName() { return this.name; } //加法 public float add(float num1, float num2) { return num1 + num2; } }
- 寫完類,將Test.java編譯產生class文件,將Test. class拷貝到C:\Program Files\Java\jre7\classes目錄下,因為版本號碼的不同,jre7資料夾名字可能不同。安裝JDK時候預設沒有C:\Program Files\Java\jre7\classes,需要手動建立。
- 修改Test.php的內容為:
//自定义类测试 require_once("java/Java.inc"); $test = new Java("Test"); //产生实例 $test->setName("哈哈,PHP调用JAVA的方法!"); //后面的调用就跟在php中调用类方法一样 print "调用类Test的getName方法,返回值为:".$test->getName()."<br>"; print "调用Test的add方法,返回值为:".$test->add(11.2, 15.7);
- 再造訪http://localhost/test.php,頁面就輸出下面內容了:
- 就這個東東搞了一天才搞出來,哎網路上找了很多方法都行不通,這樣每次都要把class移到jre目錄裡不方便,加上java_require ("Test.jar"); 引用jar包卻報這個錯: Warning: java_require() not supported anymore. Please use
本網站聲明本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

在PHP8 中,match表達式是一種新的控制結構,用於根據表達式的值返回不同的結果。 1)它類似於switch語句,但返回值而非執行語句塊。 2)match表達式使用嚴格比較(===),提升了安全性。 3)它避免了switch語句中可能的break遺漏問題,增強了代碼的簡潔性和可讀性。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。
