首页 > php教程 > php手册 > 正文

php 调用 java类 常见配置错误

php中文网
发布: 2016-06-21 09:06:58
原创
1167人浏览过

错误

不搞PHP开发的工作很长时间了,最近修改一个原来做的项目要支持调用Java类,开始重操PHP,先解决配置问题再说。不说太多费话。网上的

文章不少,但是都有很多错误的东西在里面,下面我介绍一下我配置全过程与大家分享,如有问题可以虽时联系愿意为你解决。

说明:此文章的正常性只对本文中所提供版本的PHP和JDK有保证,其它版本的未一一试,如有问题及时联系愿与你一起解决相关问题。

安装配置PHP的工作这里就略过(有不会的朋友可以与我联系inber_net@hotmail.com)
 
测试环境:Windows2003+IIS+PHP Version 4.3.6+JDK 1.4.1_01

下面我先将网上的错误的配置列表罗列如下

错误配置1
java.home = D:j2sdk14101
错误结果如下:
can't open D:j2sdk14101\lib zmappings.
解决办法:
java.home = D:j2sdk14101jre

错误配置2
java.class.path ="C:PHPextensionsphp_java.jar;x:Java Class文件存目录
错误结果如下:
Fatal error: Call to a member function on a non-object in E:inberkongpublic_htmlphproot estjava.php on line
错误原因:用户Java class文件没有存放在 x:Java Class文件存目录 中或者x:Java Class文件存目录不存在
解决办法:1 确定java.class.path ="C:PHPextensionsphp_java.jar;x:Java Class文件存目录 正确
          2 确定此目录下有在PHP调用的Class文件并确定是正确的

正确的配置如下:

第一步:确定环境正确
默认以上环境配置正确
PHP目录:C:PHP
JDK目录:D:j2sdk14101
第二步
找到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:j2sdk14101jreinserverjvm.dll
java.library.path = C:PHPextensions
第三步

写一个Java文件并编译后放在C:PHPphp_for_class
Test.java文件如下:

先见AI
先见AI

数据为基,先见未见

先见AI 95
查看详情 先见AI

package Test;
public class Test
{
 public String getMessage(String dd)
 {
 return "Hello PHP ! I am  from JAVA."+dd;
 }  
}

 写一个PHP文件testjava.php 调用Test包中的Test类

$system = new Java("java.lang.System");
print "Java version=".$system->getProperty("java.version")."
";
print "Java vendor=".$system->getProperty("java.vendor")."

";
print "OS=".$system->getProperty("os.name")." ".
$system->getProperty("os.version")." on ".
$system->getProperty("os.arch")."
";

$formatter = new Java("java.text.SimpleDateFormat","EEEE,MMMM dd, yyyy 'at' h:mm:ss a zzzz");
print $formatter->format(new Java("java.util.Date"))."

";

$b=new Java("Test.Test");
$x=$b->getMessage("
Hello Java! I am from PHP!");
echo $x;

?>
显示结果:
Java version=1.4.1_01
Java vendor=Sun Microsystems Inc.
OS=Windows XP 5.2 on x86
星期四,一月 12, 2006 at 3:00:51 下午 中国标准时间

Hello PHP ! I am from JAVA.
Hello Java! I am from PHP!




相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号