PHP5历史以及各个版本的新功能和新特性收集总结
2015-11-26 15:25
573 查看
PHP的版本历史
1995年初
PHP1.0诞生
Rasmus Lerdof发明了PHP,这是简单的一套Perl脚本,用来跟踪访问者的信息。这个时候的PHP只是一个小工具而已,它的名字叫做“Personal Home Page Tool”(个人主页小工具)。
1995年6月
PHP2.0诞生
Rasmus Lerdof用C语言来重新开发这个工具,取代了最初的Perl程序。这个新的用C写的工具最大的特色就是可以访问数据库,可以让用户简单地开发动态Web程序了。这个用C写的工具又称为PHP/FI。它已经有了今天php的一些基本功能了。
自Rasmus在1995年6月将PHP/FI发布源码之后,到1997年,全世界大约有几千个用户(估计)和大约50000个域名安装。
1998年6月
PHP3.0诞生
虽然说98年6月才正式发布php3.0,但是在正式发布之前,已经经过了9个月的公开测试了。
Andi Gutmans和Zeev Suraski加入了PHP开发项目组。这是两个以色列工程师,他们在使用PHP/FI的时候发现了PHP的一些缺点,然后决定重写PHP的解析器。注 意,在这个时候,PHP就不再称为Personal Home Page了。而改称为PHP:Hypertext Preprocessor(超文本预处理器 )。
PHP3是最像现在使用的php的第一个版本,这个重写的解释器也是后来Zend的雏形。PHP3.0的最强大的功能就是它的可扩展性。它提供给第三方开发者数据库,协议,和API的基础结构之外,还吸引了大量的开发人员加入并提交新的模块。
2000年5月
PHP4.0发布
Andi Gutmans和Zeev Suranski在4.0做的最大的动作就是重写了PHP的代码,发明了Zend引擎来增强程序运行时的性能和PHP的模块性。这个Zend实际上就是Andi和Zeev名字缩写的合称。
使用了Zend引擎,PHP获得了更高的性能之外,也有其他一些关键的功能,包括支持更多的web服务器;HTTP,Session的支持,输出缓冲等。
2004年7月
PHP5.0发布
PHP5.0的核心是Zend引擎2代。它引入了新的对象模型和大量的新功能。比如引入了PDO(PHP Data Object)
新特性
PHP5.3
新功能:
添加了命名空间的支持.
添加了静态晚绑定支持.
增加了goto支持。
增加了闭包支持。
新增了两个魔术方法, callStatic 和 invoke.
添加了 Nowdoc 语法支持, 类似于 Heredoc 语法, 但是包含单引号.就是<<'EOF'这样的语法。
可使用双引号声明 Heredoc, 补充了 Nowdoc 语法.
可在类外部使用 const 关键词声明 常量.
三元运算操作符有了简写形式:表达式 ? true :false 。
HTTP 流包裹器将从 200 到 399 全部的状态码都视为成功。
允许动态访问静态方法。
异常可以被内嵌
新增了循环引用的垃圾回收器并且默认是开启的.
mail() 现在支持邮件发送日志. (注意: 仅支持通过该函数发送的邮件.)
PHP5.4
新特性:
新增支持 traits 。
新增短数组语法,比如
a=[1,2,3,4];或
a = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4]; 。
新增支持对函数返回数组的成员访问解析,例如 foo()[0] 。
现在 闭包 支持 $this 。
现在不管是否设置 short_open_tag php.ini 选项,<?= 将总是可用。
新增在实例化时访问类成员,例如: (new Foo)->bar() 。
现在支持 Class::{expr}() 语法。
新增二进制直接量,例如:0b001001101
改进解析错误信息和不兼容参数的警告。
SESSION 扩展现在能追踪文件的 上传进度 。
内置用于开发的 CLI 模式的 web server 。
PHP5.5
新特性:
新增 Generators,包括yield关键字
新增 finally 关键字
foreach 现在支持 list()
empty() 现在支持传入一个任意表达式,而不仅是一个变量。
非变量array和string也能支持下标获取了
类名通过::class可以获取
增加了opcache扩展
1995年初
PHP1.0诞生
Rasmus Lerdof发明了PHP,这是简单的一套Perl脚本,用来跟踪访问者的信息。这个时候的PHP只是一个小工具而已,它的名字叫做“Personal Home Page Tool”(个人主页小工具)。
1995年6月
PHP2.0诞生
Rasmus Lerdof用C语言来重新开发这个工具,取代了最初的Perl程序。这个新的用C写的工具最大的特色就是可以访问数据库,可以让用户简单地开发动态Web程序了。这个用C写的工具又称为PHP/FI。它已经有了今天php的一些基本功能了。
自Rasmus在1995年6月将PHP/FI发布源码之后,到1997年,全世界大约有几千个用户(估计)和大约50000个域名安装。
1998年6月
PHP3.0诞生
虽然说98年6月才正式发布php3.0,但是在正式发布之前,已经经过了9个月的公开测试了。
Andi Gutmans和Zeev Suraski加入了PHP开发项目组。这是两个以色列工程师,他们在使用PHP/FI的时候发现了PHP的一些缺点,然后决定重写PHP的解析器。注 意,在这个时候,PHP就不再称为Personal Home Page了。而改称为PHP:Hypertext Preprocessor(超文本预处理器 )。
PHP3是最像现在使用的php的第一个版本,这个重写的解释器也是后来Zend的雏形。PHP3.0的最强大的功能就是它的可扩展性。它提供给第三方开发者数据库,协议,和API的基础结构之外,还吸引了大量的开发人员加入并提交新的模块。
2000年5月
PHP4.0发布
Andi Gutmans和Zeev Suranski在4.0做的最大的动作就是重写了PHP的代码,发明了Zend引擎来增强程序运行时的性能和PHP的模块性。这个Zend实际上就是Andi和Zeev名字缩写的合称。
使用了Zend引擎,PHP获得了更高的性能之外,也有其他一些关键的功能,包括支持更多的web服务器;HTTP,Session的支持,输出缓冲等。
2004年7月
PHP5.0发布
PHP5.0的核心是Zend引擎2代。它引入了新的对象模型和大量的新功能。比如引入了PDO(PHP Data Object)
新特性
PHP5.3
新功能:
添加了命名空间的支持.
添加了静态晚绑定支持.
增加了goto支持。
增加了闭包支持。
新增了两个魔术方法, callStatic 和 invoke.
添加了 Nowdoc 语法支持, 类似于 Heredoc 语法, 但是包含单引号.就是<<'EOF'这样的语法。
可使用双引号声明 Heredoc, 补充了 Nowdoc 语法.
可在类外部使用 const 关键词声明 常量.
三元运算操作符有了简写形式:表达式 ? true :false 。
HTTP 流包裹器将从 200 到 399 全部的状态码都视为成功。
允许动态访问静态方法。
异常可以被内嵌
新增了循环引用的垃圾回收器并且默认是开启的.
mail() 现在支持邮件发送日志. (注意: 仅支持通过该函数发送的邮件.)
PHP5.4
新特性:
新增支持 traits 。
新增短数组语法,比如
a=[1,2,3,4];或
a = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4]; 。
新增支持对函数返回数组的成员访问解析,例如 foo()[0] 。
现在 闭包 支持 $this 。
现在不管是否设置 short_open_tag php.ini 选项,<?= 将总是可用。
新增在实例化时访问类成员,例如: (new Foo)->bar() 。
现在支持 Class::{expr}() 语法。
新增二进制直接量,例如:0b001001101
改进解析错误信息和不兼容参数的警告。
SESSION 扩展现在能追踪文件的 上传进度 。
内置用于开发的 CLI 模式的 web server 。
PHP5.5
新特性:
新增 Generators,包括yield关键字
新增 finally 关键字
foreach 现在支持 list()
empty() 现在支持传入一个任意表达式,而不仅是一个变量。
非变量array和string也能支持下标获取了
类名通过::class可以获取
增加了opcache扩展
相关文章推荐
- php 接受json数据时有转义字符处理办法
- php+mysql 内联接 和 子查询
- cetons 怎么强制卸载 PHP
- PHP带水印的图片上传
- 一致性hash - php
- php Spl的常用函数 链式操作
- php 一致性hash
- 一致性hash - php
- PHP 解析JSON数组
- php or || 和 and &&
- PHP用CURL伪造IP和来源
- 兔子-PhpStorm10 快速激活
- sftp文件上传和读取
- PHP5.3中 in_array()的一个坑
- PHP5.3中 in_array()的一个坑
- 自用PhpStorm快捷键。
- 自用PhpStorm快捷键。
- php file_exists无效解决办法
- PHP的几个常用加密函数
- Github上的PHP资源汇总大全