PHP调用java中的注意事项

                                            PHP调用java中的注意事项

PHP调用java通常是通过php-java-bridge方式调用的。本文描述下调用的关键步骤。

1、下载php-java-bridge.jar文件。

2、解压php-java-bridge.jar包中的文件,获取文件中的Java.inc

3、把php-java-bridge.jar文件放在\Java\jdk1.8.0_102\jre\lib\ext目录下。

4、把需要调用的java库的jar包放在Java\jre1.8.0_102\lib\ext目录下。

5、java -jar JavaBridge.jar SERVLET_LOCAL:8080 &运行jar包,或者双击

这时候java测就准备好了

-----------------------------------------

修改php文件中的代码进行调用。

示例代码

getInstance();
//3.调用sdk初始化方法
echo '初始化结果:';
$init = $instance->init("120.194.4.111:1800", "5cc0d94087a642d2894d156f1ee97be5","/usr/local/sercert");
var_dump($init);
echo PHP_EOL;
//var_dump(base64_encode("3082026A3082020DA0030201020208621100000035F0A0300C06082A811CCF5501837505003046310B300906035504061302636E311F301D060355040A131658696E44614A6965416E20436F72706F726174696F6E3116301406035504030C0D58646A6153756243615F736D32301E170D3139303530383035353031305A170D3335303430393036303433305A3078310B300906035504061302636E311F301D060355040A131658696E44614A6965416E20436F72706F726174696F6E310F300D060355040B13067573626B65793137303506035504030C2E78696E6368616F30315F37383634364136313738363436413631343835383533333133383138373734465F656E633059301306072A8648CE3D020106082A811CCF5501822D034200042252E5E2791D992D784FFC70128032A37CF6252ED04472AF9CBE30431511206F31957C4713DCD0E2352E95D0084C5491B2FF0F095DBD4005B8CE00AF3673D4DAA381B03081AD301F0603551D2304183016801445AC00A8627C6AA8F3502CBD08A39C81D170FB46301D0603551D0E041604141CFF0CFCA7CD20E3C452FF94BE0CC9AF2E29413630090603551D130402300030500603551D1F044930473045A043A041863F687474703A2F2F63726C2E7361666563656E7465722E636F6D2F43726C446F776E6C6F61643F64703D55736572434133352E63726C266361416C673D322E30300E0603551D0F0101FF040403020338300C06082A811CCF5501837505000349003046022100FB7B3D8401C16056130D4BACAD17D343F73EDBAF6DC095AD0C6D0443C0140F4D022100EE29E972816641931848100B7270D0FD8FBB0B71EDF08232D335EE2694963CB1"));
$res = $instance->verifyUkeyIdentity("aaaa","bbbb");
var_dump($res);

$hashObject = new Java("com.my.iot.platform.sdk.HashObject");
$instance->getMediaFileHash("/data/360.avi", $hashObject);

echo PHP_EOL;
echo '摘要值:';
echo $hashObject->getHash();
//6.打印简摘要密文
echo PHP_EOL;
echo '简摘要密文:';
echo $hashObject->getEasyHashCipher();
echo PHP_EOL;
?>

但是你的代码会执行出错,原因是php中获取java返回值不能直接使用var_dump方法。可以用一下两种方法写java_values($res)或者var_dump(java_values($res)),另外网上说也可以用var_dump(java_inspect($abc))),我是没有测试成功。

你可能感兴趣的:(PHP)