php は Java メソッドを呼び出します。まず「php-java-bridge_6.2.1_documentation.zip」をダウンロードして JavaBridge を実行し、次に www ディレクトリに新しい test.php を作成し、最後に PHP のカスタム JAVA クラスを呼び出します。 。 できる。
推奨: 「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.jar と Lucene.jar は JavaBridge\WEB-INF\LIB にあります。
- JDK: JavaBridge は Java 言語によって実装されるため、jar ファイルの実行をサポートするには JDK をインストールする必要があります。そして環境変数を設定します。
1.2. JavaBridge の実行
- JavaBridge\WEB-INF\LIB にある JavaBridge.jar をダブルクリックして実行すると、選択可能なダイアログ ボックスが表示されます。ポップアップが表示されない場合は、JDK がインストールされていないか、ファイルの関連付けエラーが発生しています。解決策は、JDK をインストールするか、「start javaw -jar JavaBridge.jar」を実行することです (コンテンツは *.bat に保存されており、 *.bat は JavaBridge.jar と同じディレクトリにあります) をダブルクリックする代わりに。ダイアログボックスが表示されたら、何も選択する必要はなく、「OK」をクリックするだけです。次のように修正します:
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 ディレクトリが見つかります。 test.php と同じディレクトリに移動し、http://localhost/test.php を実行すると、JavaBridge のインストールが成功したことを示す次の内容が出力されます。
1.4. PHP 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 を使用してクラス ファイルを生成し、Test を変換します。クラスは 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 にアクセスすると、ページに次のコンテンツが出力されます:
- この作業に 1 日かかりました。インターネットで多くの方法を見つけましたが、うまくいきませんでした。毎回クラスを jre ディレクトリに移動するのは不便ですAdd java_require ("Test.jar"); jar パッケージを引用すると、次のエラーが報告されます: 警告: java_require() はサポートされなくなりました。135dffa1b19cd4a54bf0b2f9fe47c048tomcat または jee hotdeploy5db79b134e9f6b82c0b36e0489ee08ed 代わりに D:\wamp\www\java\Java.inc 行 1656 jar パッケージを直接参照する方法がわかりません方法をご存知の場合は、アドバイスをお願いします。!
以上がPHPでJavaメソッドを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。