下载本文示例代码
综述:Java的易扩展性是它极其的令人兴奋的特点之一,PHP虽然有强大的功能,但面临一些底层功能的实现时,常捉襟见肘,下面我们就来谈一谈如何在PHP中使用Java的类库。 如何安装JDK? 一路回车将JDK安装好(假设安装在C:\jdk目录,而PHP安装在C:\php4)。然后做好以下步骤: 在 Win9x 下加入 :"PATH=%PATH%;C:\jdk\bin" 到AUTOEXEC.BAT文件中,在 NT下加入 ";C:\jdk\bin"到环境变量中。这一步是非常需重要的,这样PHP才能正确的找到需调用的JAVA类。 如何修改PHP.INI文件以支持Java?
[java]extension=php_java.dlljava.home = C:\jdk1.3.1_01java.library = C:\jdk1.3.1_01\jre\bin\CLASSIC\jvm.dlljava.library.path=C:\php4\extensions\java.class.path="C:\php4\java\php_java.jar;C:\php4\java\" 在PHP.INI中加入extension=php_java.dll,注意应该加在[java]段中,而不是和和其他的extension=*.dll加在一起。设定好java.class.path,让它指向php_java.jar,如果使用新的JAVA类,也应该存入这个路径,在这篇例子中,我们使用C:\php4\java\这个目录。 测试环境 ??创建如下PHP文件:
<?php $system = new Java("java.lang.System"); print "Java version=".$system->getProperty("java.version")." n"; print "Java vendor=".$system->getProperty("java.vendor")." print "OS=".$system->getProperty("os.name")." ".$system->getProperty("os.version")." on ".$system->getProperty("os.arch")."\n"; $formatter = new Java("java.text.SimpleDateFormat","EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz"); print $formatter->format(new Java("java.util.Date"))."n"; ?> 如果你正确安装了,你将会看到类似以下的信息:
Java version=1.3.1_01Java vendor=Sun Microsystems Inc. OS=Windows 98 4.10 on x86星期一, 十一月 26, 2001 at 9:45:53 上午 Greenwich Mean Time 这样,我们就已经成功的建立起了可以使用JAVA类的PHP运行环境。 应用举例 创建你自己的JAVA类, 新建一个phptest.java文件,将它放置在你的java.class.path目录(在上面的例子中,是"C:\php4\java\")下,文件内容如下:
public class phptest{ public String myvalue; public String setValue(String v){ myvalue=v; return myvalue; } public static void main(String args[]){ phptest p = new phptest(); if(args.length == 0) { System.out.println("Not Set!"); }else{ for (int i=0; i < args.length; i ) { String arg = args[i]; System.out.println(p.setValue(arg)); } } }} 创建这个文件后,我们要编译好这个文件,在DOS命令行使用javac phptest.java这个命令。 为了使用PHP测试这个JAVA类,我们创建一个phptest.php文件,内容如下:
<?php $myobj = new Java("phptest"); echo $myobj->setValue("Hello,PHP and Java world!");?> 如果你得到这样的警告信息:java.lang.ClassNotFoundException error ,这就意味着你的phptest.class文件不在你的java.class.path目录下。 注意的是JAVA是一种强制类型语言,而PHP不是,这样我们在将它们融合时,容易导致错误,于是我们在向JAVA传递变量时,要正确指定好变量的类型。
综述:Java的易扩展性是它极其的令人兴奋的特点之一,PHP虽然有强大的功能,但面临一些底层功能的实现时,常捉襟见肘,下面我们就来谈一谈如何在PHP中使用Java的类库。 如何安装JDK? 一路回车将JDK安装好(假设安装在C:\jdk目录,而PHP安装在C:\php4)。然后做好以下步骤: 在 Win9x 下加入 :"PATH=%PATH%;C:\jdk\bin" 到AUTOEXEC.BAT文件中,在 NT下加入 ";C:\jdk\bin"到环境变量中。这一步是非常需重要的,这样PHP才能正确的找到需调用的JAVA类。 如何修改PHP.INI文件以支持Java?
[java]extension=php_java.dlljava.home = C:\jdk1.3.1_01java.library = C:\jdk1.3.1_01\jre\bin\CLASSIC\jvm.dlljava.library.path=C:\php4\extensions\java.class.path="C:\php4\java\php_java.jar;C:\php4\java\" 在PHP.INI中加入extension=php_java.dll,注意应该加在[java]段中,而不是和和其他的extension=*.dll加在一起。设定好java.class.path,让它指向php_java.jar,如果使用新的JAVA类,也应该存入这个路径,在这篇例子中,我们使用C:\php4\java\这个目录。 测试环境 ??创建如下PHP文件:
<?php $system = new Java("java.lang.System"); print "Java version=".$system->getProperty("java.version")." n"; print "Java vendor=".$system->getProperty("java.vendor")." print "OS=".$system->getProperty("os.name")." ".$system->getProperty("os.version")." on ".$system->getProperty("os.arch")."\n"; $formatter = new Java("java.text.SimpleDateFormat","EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz"); print $formatter->format(new Java("java.util.Date"))."n"; ?> 如果你正确安装了,你将会看到类似以下的信息:
Java version=1.3.1_01Java vendor=Sun Microsystems Inc. OS=Windows 98 4.10 on x86星期一, 十一月 26, 2001 at 9:45:53 上午 Greenwich Mean Time 这样,我们就已经成功的建立起了可以使用JAVA类的PHP运行环境。 应用举例 创建你自己的JAVA类, 新建一个phptest.java文件,将它放置在你的java.class.path目录(在上面的例子中,是"C:\php4\java\")下,文件内容如下:
public class phptest{ public String myvalue; public String setValue(String v){ myvalue=v; return myvalue; } public static void main(String args[]){ phptest p = new phptest(); if(args.length == 0) { System.out.println("Not Set!"); }else{ for (int i=0; i < args.length; i ) { String arg = args[i]; System.out.println(p.setValue(arg)); } } }} 创建这个文件后,我们要编译好这个文件,在DOS命令行使用javac phptest.java这个命令。 为了使用PHP测试这个JAVA类,我们创建一个phptest.php文件,内容如下:
<?php $myobj = new Java("phptest"); echo $myobj->setValue("Hello,PHP and Java world!");?> 如果你得到这样的警告信息:java.lang.ClassNotFoundException error ,这就意味着你的phptest.class文件不在你的java.class.path目录下。 注意的是JAVA是一种强制类型语言,而PHP不是,这样我们在将它们融合时,容易导致错误,于是我们在向JAVA传递变量时,要正确指定好变量的类型。
下载本文示例代码
PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展PHP中的Java扩展