一、语言特点
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倍的时间及经济成本,直接的造成了巨大的时间及成本浪费,因此开发时还是需要根据实际需要去选择语言。
标签:php,java,区别,数据库,开发,Java,PHP From: https://blog.csdn.net/qq_21886255/article/details/137474638