私は長い間 PHP 開発作業に従事していませんでしたが、最近、Java クラスの呼び出しをサポートするために元のプロジェクトを変更し、再び PHP の作業を開始し、最初に構成の問題を解決しました。あまり話さないでください。インターネット上には多くの記事がありますが、その中には間違った内容も多くあります。以下に私の構成プロセス全体を紹介し、ご質問があればお気軽にご連絡ください。それを解決してください。
注: この記事の正常性は、この記事で提供されている PHP および JDK のバージョンについてのみ保証されています。他のバージョンは個別に試していません。問題がある場合は、すぐにご連絡ください。関連する問題を解決するためにあなたと協力します。
PHPのインストールと設定の作業はここでは省略します
テスト環境:Windows2003+IIS+PHP Version 4.3.6+JDK 1.4.1_01
ここでインターネット上にある間違った設定リストを以下に挙げておきます:
間違った設定1
java.home = D:j2sdk14101
エラー結果は次のとおりです:
D:j2sdk14101\libtzmappings.を開くことができません
解決策:
java.home = D:j2sdk14101jre
エラー構成2
java.class.path= C:PHPextensionsphp_java.jar ;x:Java クラス ファイルはディレクトリに保存されます
エラー結果は次のとおりです:
致命的エラー: E:inberkongpublic_htmlphproottestjava.php 行の非オブジェクトのメンバー関数を呼び出します
エラーの理由:ユーザーの Java クラス ファイルが x:Java クラスに保存されていません。 ファイルがディレクトリに保存されているか、x:Java クラス ファイルが保存されているディレクトリが存在しません。 解決策: 1 java.class.path = "C" であることを確認します。 :PHPextensionsphp_java.jar; x:Java クラス ファイルが保存されているディレクトリが正しいことを確認します。 2 このディレクトリに PHP があることを確認し、クラス ファイルが正しいことを確認します。 正しい構成は次のとおりです。 :
ステップ 1: 環境が正しいことを確認します
PHP ディレクトリ: C:PHP
JDK ディレクトリ: D:j2sdk14101第 2 ステップ
C:WINDOWS で php.ini を見つけます1 extension_dir を見つけますディレクトリに php_java.jar php_java.dll があることを確認するように設定します
extension_dir = "D:PHPextensions"
2 この設定情報の前に、extension=php_java.dll を見つけます。セミコロンを削除します
extension=php_java.dll
3。ファイル内の[java]以降の内容を記述し、該当する内容を設定します
[Java]
java.class.path = "C:PHPextensionsphp_java.jar;C:PHPphp_for_class"
java.home = D:j2sdk14101jre
java.library = D :j2sdk14101jrebinserverjvm.dll
java.library.path = C:PHPextensions
ステップ 3
Java ファイルを作成してコンパイルし、C:PHPphp_for_class に配置します
Test.java ファイルは次のとおりです:
package Test;
public class Test
public String getMessage(String dd)
{
}
}
PHP ファイルを作成するtestjava.php を使用して Test パッケージ内の Test クラスを呼び出します
$system = new Java("java.lang.System");
print "Java version=".$system-> ;getProperty(") java.version")."
n";
print "OS=" .$system->getProperty("os.name")." ".
$system->getProperty("os.version")." on ".
$formatter = new Java("java.text.SimpleDateFormat","EEEE,MMMM dd, yyyy 'at' h:mm:ss a zzzz"); ->format(new Java("java.util.Date"))."
n";
$b=new Java("Test.Test");
$x=$ b->getMessage("
こんにちは Java! 私は PHP です!");
echo $x;
?> 結果を表示:
Java version=1.4.1_01
OS=x86 上の Windows XP 5.2
2006 年 1 月 12 日木曜日、午後 3 時 00 分 51 秒、中国標準時
こんにちは。 Java! 私は PHP です!
上記は、PHP が Java クラスを呼び出す際の一般的な設定エラーの内容です。その他の関連記事については、PHP 中国語 Web サイト (m.sbmmt.com) に注目してください。