PHP与Java的区别分析

一、语言特点

php: 一种的像Python的动态弱语言类型的服务器脚本语言,不需要编译代码;它是专为Web开发目的而开发和设计的,而且简单容易上手。

Java: 是一种通用的面向对象编程语言,属于强势优选语言类型,在执行前必须先正确编译。是面向对象的和人类可读的;支持服务器端和客户端;可用于开发独立应用程序或基于Web的应用程序,上手比PHP难。

二、语法

1.PHP是一种脚本语言,代码在服务器上执行,而结果以纯文本返回浏览器。

2.PHP能够运行在各种不同的平台中:比如windows,linux,MaxOS等。

3.PHP的脚本能够存放在文档的任何位置,且以 结尾。

4.PHP的注释: PHP支持三种注释方式:

A.双斜杠 例如://这是申明一个变量

B.#符号 例如:#这是申明一个变量

C./**/ 例如:/这是申明一个变量/

java同样支持三种注释方式:

A.双斜杠 例如: //这是申明一个变量

B./**/ 例如: /这是申明一个变量/

C./***/ 例如: /**这是申明一个变量/

5.PHP中的大小写敏感问题: 在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感,而变量则是大小写敏感的。

而在java中,所有函数名,关键字,类,变量等都是大小写敏感的。

6.PHP的变量申明:PHP类似于Javascript,两者都属于是若引用类型,申明的时候不用指明其类型。 而java则是强引用类型,申明时必须指明其类型。

PHP中申明变量的方式是:$X = 7; 注意: java和PHP变量的命名规则相同。

7.PHP中变量的作用域:

A. global (全局的): 只能在函数以外进行访问

B. Local(局部的): 只能在方法体重进行访问

C.static (静态的)

java中全局变量允许在方法中进行访问。

8.global关键字: 可以在函数体内使用global关键字对全局变量进行访问。

例如:

}

myTest();echo $y; //输出 15

?>

9.PHP中的echo和print的差别:

echo能够输出一个以上的字符串,速度比print稍快

print只能输出一个字符串,并返回1 (与之不同,java可以使用print输出一行语句)。

注意: PHP中print能够在双引号中输出变量,而java中双引号中不能输出变量。

例如:

echo "Study PHP at $txt2";

同样的也能输出数组中的任意元素:echo "My car is a {$cars[0]}";

echo与print在有无括号的情况下都能使用。例如:echo与echo();

10.PHP中的类: 就其实现过程与java相同,都是用了关键字class ,但其中的数据声明却不相同。

{var $color;function Car($color="green") {$this->color = $color;

}functionwhat_color() {return $this->color;

}

}?>

11.PHP中的字符串可以使用双引号或者是单引号表示。但是在java中只能使用双引号。

例如:“string" 'string'

12.java中有内部类的概念,php没有;

13.java中一个类下面有方法重载的,php只能重载父类的方法;

14.运行机制不同:

15.java是强类型,php是若类型,比如方法入参、返回等,java必须要指定值的类型;

16.java里有 8种基本数据类型,和对应的引用类型,php没有引用类型,在java中判断两个变量的值是否相等,必须先转成基本数据类型,不然可能比较的就是两个变量引用值,php则不用;

17.java和php构造方法不能继承,java用super,php用parent可调用父类构造方法。

三、开发成本

php: 最经典的组合就是:PHP + MySQL + Apache | Nginx。非常适合开发中小型的Web应用,开发的速度比较快。而且所有的软件都是开源免费的,可以减少投入。

Java: Web应用服务器有免费Tomcat、JBoss等,如果需要更好的商业化的服务有:Web Sphere和 Web logic。

四、系统架构设计

对于Web开发两者的区别:

php: 采用面向过程的开发方法,适合快速开发,WEB领域php拥有得天独厚的优势,但可拓展性、需求应变性较差,而且只能实现简单的分布式两层或三层的架构,对于大型的系统负荷站点,只能采用分布计算。

Java: 使用的是面向对象的系统设计方法,所以用Java进行开发前期需要做大量的系统分析和设计的工作,Java可以实现多层的网络架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。

五、安全性

php: 开发的程序的源代码都是公开的,安全性低。

Java: 开发的程序,最后用户拿到的只是一些编译好的class类,安全性高。

六、访问数据库速度

php: 对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。例如:用Java开发的Web应用从MySQL数据库转到Oracle数据库只需要做很少的修改。而php则需要做大量的修改工作。

Java: 通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库。访问数据库的接口比较统一。

五、性能

有人做过试验,对这两种种语言分别做回圈性能测试及存取Oracle数据库测试。

在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了2000020000的回圈。而PHP测试的是20002000循环(少一个数量级),却分别用了63秒。

数据库测试中,二者分别对 Oracle 8 进行 1000 次 Insert,Update,Select和Delete: JSP 需要 13秒,PHP 需要 69 秒。

当并发时php的性能是不如Java的,上面的测试是网上找的,本人没有测试过,估计是PHP是每次请求完都会释放所有的内存,断开数据库连接,这样会导致每次请求都需要重新连接数据库这样会占用一部分资源,而Java则是有一个数据库线程池中,需要时直接从连接池获取资源,在并发时会比php节省更大的资源。

八 总结

综上所述,就Web开发而言,PHP适合于快速开发,中小型应用系统,开发成本低,能够对变动的需求作出快速的反应。而Java适合于开发大型的应用系统,应用的前景比较广阔,系统易维护、可复用性较好。还有,同样功能的系统用Java开发的系统要比PHP开发的系统的价格要高。

而且Java本身一开始就不是专门给WEB开发用的,所以Java开发电子商务的成本要远远高于PHP开发出来的同类软件产品。但也正由于Java开发的成本较高,往往也是做一个同样的产品,达到同样的效果,Java需要付出比PHP开发多出N倍的时间及经济成本,直接的造成了巨大的时间及成本浪费,因此开发时还是需要根据实际需要去选择语言。

  • 28
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Q.ZHA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值