php由于其开源的特性,使得很多加密验证的功能都使用java包来实现,特别是银行接口开发,加密验证基本得使用java包,而很多电商都使用ecshop等开源的php软件,当然有很多方法可以通过服务端的配置来实现php代码提交表单给java来执行从而完成验证(可查看nginx+tomcat整合配置),本文介绍一个比较简单的
方法在使用php-java-bridge(官网php-java-bridge官网)在php中执行java代码

步骤1:安装jdk(如何安装就不讲了,不懂自己google),jdk下载地址http://www.oracle.com/technetwork/java/javase/downloads/index.html

步骤2:下载php-java-bridge.jar :http://php-java-bridge.sourceforge.net/pjb/download.php

步骤3:下载配置文件:Java.inc:http://php-java-bridge.sourceforge.net/pjb/download.php

以下的官方的一些描述,你可以提供直接点击相应关键字下载

Zip file contains
点击下载:JavaBridge.jar
点击下载:php-script.jar
点击下载:php-servlet.jar.
点击下载: java/Java.inc PHP library

我们只需下载JavaBridge.jar与Java.inc 就行
下载完毕 !!

步骤4:开始php-java-bridge.jar
方法一:双击php-java-bridge.jar会出现如下界面,点确定就可以(确保端口没被占用)
php-java-bridge启动
方法二:使用命令行:java –jar JavaBridge.jar SERVLET_LOCAL:8080 (JavaBridge.jar路径要注意)

步骤四:将Java.inc放到你php web项目下,新建的java目录(例如:test/java/Java.inc)注意:如果你的端口不是8080 必须在Java.inc中修改端口(Java.inc默认是8080,你可以搜索下替换之)启动ok后 就可以在php中使用java代码

实例代码:新建test.php,输入以下代码

<?php
require_once("java/Java.inc");  //注意运用路径
$system = new Java('java.lang.System'); //运用系统包
header("content-type:text/html; charset=utf-8");
$s = new Java("java.lang.String", "我在php中执行java");
echo $s;
?>

在浏览器访问:http://localhost/test/test.php
输出结果如下图:

php中执行java代码输出结果