PHP调用javabridge

系统 2092 0

参考网上一篇教程,结合自己遇到的一些问题,把文档整理了一遍,希望对大家有帮助!我的系统Centos5.8

PS:本人新手,第一篇博客希望大家支持和帮助!

 

 

PHP 调用 java class 2 种方法

    1 、用 php 自身带的模块调用 java (不过经过网友的证明发现这种方法不好)我没用。

    2 、通过 php-java-bridge 模块调用 java 。(经过网上普遍推荐)我使用了这张方法。

 

下面介绍如何在 linux 下安装这个包。

1 、先安装 java 环境、 apache php 等相关环境(安装略)。

2 、下载 php-java-bridge 包(目前我用的是 php-java-bridge-4.0.1.tar.gz ,老版本的不支持 java_require)

tar xzvf php-java-bridge-4.0.1.tar.gz 解压

cd php-java-bridge-4.0.1( 进入包目录)

phpize  (要确定 phpize 在系统变量中,如不在需配置或者直接将 php/bin phpize 拷入 bin

./configure --disable-servlet --with-java=/usr/java/jdk1.7.0_05/,/usr/java/jdk1.7.0_05/jre --with-php-config=/usr/local/php/bin/php-config packetfencezen 中出现 configure: error: /bin/sh './configure.gnu' failed for server 要加上 —disable-backend

make;make install

到上面成功后那么安装就成功完成了。

开始配置 php.ini

vi /usr/local/lib/php.ini

到文件尾添加

#java 模块
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/java.so
[java]

java.java_home=" /usr/java/jdk1.7.0_05 /"
(您的 java 安装目录)
java.java="/usr/java/jdk1.7.0_05/jre/bin/java"
(在您的 java 安装目录下肯定会有这个的)
java.log_file="/var/log/php-java-bridge.log"
log 文件具体位置)
java.classpath="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/JavaBridge.jar"
JavaBridge.jar 所在位置)
java.libpath="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
(存放自定义 java class 的地方)
java.log_level="2"
log 级别)

写好上面的保存退出。

从新启动 apache

<?php

phpinfo();

?>

看看能否找到 java 。如果有就证明成功安装了。 <!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="图片_x0020_1" o:spid="_x0000_i1025" type="#_x0000_t75" alt="说明: 大笑" style='width:15.75pt;height:15.75pt;visibility:visible; mso-wrap-style:square'> <v:imagedata src="file:///C:\Users\yj\AppData\Local\Temp\msohtmlclip1\01\clip_image001.gif" o:title="大笑" /> </v:shape><![endif]--><!--[if !vml]--> 说明: 大笑 <!--[endif]-->

测试一下看看能不能用

注意 : 我们使用的时候还要启动 Javabridge.jar (不过一般会自动启动)   java –jar xxx/javabridge.jar 命令( javabridge 启动与否可以再 phpinfo 页面 java 模块中看到)

而且 php 中还得 require_once(‘Java.inc’);

vi java.php

<?php
//java_require("./php_test.jar");
$system=new Java("java.lang.System");
print "Java version=".$system->getProperty("java.version")." ";
$str=new Java("java.lang.String");
$str = "abc";
/*
下面是自定义的,一会在介绍。下面的程序成功运行感谢 weipeng 的技术支持
$userBook = new Java("php_test");
$userBook->test1 = "abc";
$userBook->test();
var_dump($userBook->test1);

*/
?>

运行上面的东东可以看到调用 java 成功了吧。

PHP调用javabridge


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论