当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP中的Java扩展

PHP
PHP新手总结的PHP基础知识
php实现gb2312和unicode间编码转换
用php语言实现数据库连接详细代码介绍
详细解析 PHP 向 MySQL 发送数据过程
利用PHP V5开发多任务应用程序
详细讲解PHP中缓存技术的应用
php escapeshellcmd多字节编码漏洞
《PHP设计模式介绍》导言
《PHP设计模式介绍》第一章 编程惯用法
《PHP设计模式介绍》第二章 值对象模式
《PHP设计模式介绍》第三章 工厂模式
《PHP设计模式介绍》第四章 单件模式
《PHP设计模式介绍》第五章 注册模式
《PHP设计模式介绍》第六章 伪对象模式
《PHP设计模式介绍》第七章 策略模式
《PHP设计模式介绍》第八章 迭代器模式
《PHP设计模式介绍》第九章 观测模式
《PHP设计模式介绍》第十章 规范模式
《PHP设计模式介绍》第十一章 代理模式
《PHP设计模式介绍》第十二章 装饰器模式

PHP中的Java扩展


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 172 ::
收藏到网摘: n/a

Java的易扩展性是它极其的令人兴奋的用途之一,通过学习如何使用这个模块,你可以扩展所有的可用到的Java类。为了使您了解到Java扩展性的基础,本篇文章包括系统的安装和一些PHP和Java一起使用的代码例子。

Windows下安装

以下的配置是基于Apache1.3.12,PHP4.0.3(您可以在www.php4win.de下载)和JDK1.2.2(您可以在java.sun.com下载)。我们已经在更老版本的JDK和Windows95,Windows98andNT4下的各种的MSwebservers(PWS和IIS)尝试过这种安装配置。

第一步:安装JDK
这个过程想当简单,由于JDK的安装没有过多的问题,但你需要做的是查看你的系统环境(在Windows9X中的autoexec.bat和NT环境下“控制面板”中的“系统”)并且确认JDK1.x.x\bin路径是否加载到path中。这个设置将会使你在编译Java类是变得更轻松。在Win9x中加入

PATH=%PATH%;C:\jdk1.2.2\bin

到你系统的autoexec.bat在NT的系统中加入

;C:\jdk1.2.2\bin

到Path环境变量的末端。在系统中的autoexec.bat的标注是十分重要的。PHP的Java扩展将会忽JAVA_HOME和CLASSPATH在系统中的安装路径,这样一来,在php.ini中正确的设置这些项目就是十分的重要了。

第二步:修改你的php.ini
你需要加入如下的几项到你的php.ini文件

[java]
extension=php_java.dll
java.home=C:\jdk1.2.2
java.library=c:\jdk1.2.2\jre\bin\CLASSIC\jvm.dll
java.library.path=c:\web\php4\extensions\
java.class.path="c:\web\php4\extensions\jdk1.2.2\php_java.jar;c:\myclasses"

具有代表性的问题是,有些人会把extension=php_java.dll与其它的extensions在php.ini文件中放在一起,但是它正确的位置应该是在php.ini文件中的[java]下面。java.library.path一定是在php_java.dll中被设置好的,并且java.class.path中一定要包含php_java.jar的路径。java.class.path还要加入其它你可能使用其它的类的路径,正如上面所举的例子中的c:\myclasses,或者你也可以只写前面的那段路径。

第三步:测试你的安装成果
现在,你可以建立一了类似于这样的一段php程序了:
<?php

$system=newJava("java.lang.System");
print"Javaversion=".$system->getProperty("java.version")."<br>\n";
print"Javavendor=".$system->getProperty("java.vendor")."<p>\n\n";
print"OS=".$system->getProperty("os.name")."".
$system->getProperty("os.version")."on".
$system->getProperty("os.arch")."<br>\n";

$formatter=newJava("java.text.SimpleDateFormat","EEEE,
MMMMdd,yyyy'at'h:mm:ssazzzz");
print$formatter->format(newJava("java.util.Date"))."\n";

?>
这是一个SamRuby做的例子。如果你把没一项都设置好的话,你将会看到象这样的结果:
Javaversion=1.2.2
Javavendor=SunMicrosystemsInc.
OS=Windows954.10onx86
Wednesday,October18,2000at10:22:45AMChinaStandardTime

(译者注:在本人的机器上运行的结果:
Javaversion=1.2.2
Javavendor=SunMicrosystemsInc.
OS=Windows954.90onx86
星期三,三月28,2001at1:44:33下午GMT+08:00)

这是一个非常简单的例子,但它可以告诉你用php如何访问java类,一旦你能让这个例子转起来,就说明你的php的java扩展已经安装成功。