天天看點

使用php-java-bridge讓PHP5支援java

環境:

       伺服器是64位的。

       centos linux 5.0 (x86_64)

       系統自帶apache 2.2及php5.x

所需安裝包(latest version):

jdk-1_5_0_12-linux-amd64.bin (http://java.sun.com/j2se/1.5.0/download.jsp)

php-java-bridge_5.0.0.tar.gz (http://php-java-bridge.sourceforge.net/)

1.安裝jdk-1_5_0_05

下載下傳位址:http://java.sun.com/j2se/1.5.0/download.jsp

cp /path/to/ jdk-1_5_0_12-linux-amd64.bin /usr/local/

cd /usr/local

chmod +x jdk-1_5_0_12-linux-amd64.bin

./ jdk-1_5_0_12-linux-amd64.bin

ln -s jdk1.5.0_12 jdk

2.設定環境變量,java的運作需要設定一下環境變量。

在/etc/profile中設定如下參數:

JAVA_HOME=/usr/local/java

PATH=$PATH:$JAVA_HOME/bin

并且export它們。

修改原來的export語句為:

export JAVA_HOME PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

若要立即生效,在shell下邊依次執行一遍上邊的語句。

輸入java -version能看到版本資訊,即安裝java成功了。

3.安裝php-java-bridge_5.0.0.tar.gz

下載下傳位址 http://php-java-bridge.sourceforge.net/

tar php-java-bridge_5.0.0.tar.gz

cd php-java-bridge-5.0.0

(具體環境要求和安裝請閱讀INSTALL文檔)

phpize

./configure --with-java=$JAVA_HOME

make && make install

編輯php.ini檔案

增加

[Java]

java.java_home="/usr/local/java"

java.java="/usr/local/java/jre/bin/java"

java.log_file="/var/log/php-java-bridge.log"

java.classpath="/usr/lib64/php/modules/JavaBridge.jar"

java.libpath="/usr/lib64/php/modules"

extension_dir="/usr/lib64/php/modules/"

extension=java.so

驗證:

重新開機Apache ,用pstree檢視,有“httpd---java---java---8*[java]”程序。

用指令行方式檢測 echo '<?php phpinfo() ?>' | php | fgrep java ,應該傳回字樣有“java status => running”

通過Web方式檢視phpinfo() ,存在Java小節。

在通路目錄下建立java.php檔案

<?php

phpinfo();

print "\n\n";

$v = new java("java.lang.System");

$arr=$v->getProperties();

foreach ($arr as $key => $value) {

print $key . " -> " . $value . "<br>\n";

}

?>

通過Web通路,能正确顯示Java版本、作業系統、系統時間等資訊,說明執行成功。