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

PHP
php4的彩蛋
正则表达式例子:获得某个网页上的所有超裢接
正则表达式例子:在一个字符串中查找另一个字符串
正则表达式例子:将MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式
Pattern Modifiers - 规则表达式的修饰符
PHP4实际应用经验篇(1)
PHP4实际应用经验篇(2)
PHP4实际应用经验篇(3)
PHP4实际应用经验篇(4)
PHP4实际应用经验篇(5)
PHP4实际应用经验篇(6)
PHP中的DOM XML函数
使用php动态生成gif时遇到的问题和解决办法
用PHP连mysql和oracle数据库性能比较
浅谈Windows下 PHP4.0与oracle 8的连接设置
用PHP调用数据库的存贮过程
用php与mysql的电子贺卡程序
挑战最棒的留言本的源码(一)
挑战最棒的留言本的源码(二)
如何实现日期比较,暨实现显示5天内,显示10天内的记录

PHP中的Java扩展


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 44 ::
收藏到网摘: 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扩展已经安装成功。