本文来源于php官方文档,这里并不会展开,送给有心的小伙伴做研究清单。
php 5.3
添加了命名空间的支持. 添加了静态晚绑定支持. 添加了跳标签支持. 添加了原生的闭包(lambda/匿名函数)支持. 新增了两个魔术方法, __callstatic 和 __invoke. 添加了 nowdoc 语法支持, 类似于 heredoc 语法, 但是包含单引号. 使用 heredoc 来初始化静态变量和类属性/常量变为可能. 可使用双引号声明 heredoc, 补充了 nowdoc 语法. 可在类外部使用 const 关键词声明 常量. 三元运算操作符有了简写形式: ?:. http 流包裹器将从 200 到 399 全部的状态码都视为成功。 动态访问静态方法变为可能. 异常可以被内嵌. 新增了循环引用的垃圾回收器并且默认是开启的. mail() 现在支持邮件发送日志. (注意: 仅支持通过该函数发送的邮件.)
php 5.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 新增 finally 关键字 foreach 现在支持 list() empty() 支持任意表达式 array and string literal dereferencing ¶ 新的密码哈希 api 改进 gd
php5.6
使用表达式定义常量 使用 ... 运算符定义变长参数函数 使用 ... 运算符进行参数展开 使用 ** 进行幂运算 use function 以及 use const phpdbg 默认字符编码 php://input 是可重用的了 大文件上传(现在可以支持大于 2gb 的文件上传) gmp 支持运算符重载 使用 hash_equals() 比较字符串避免时序攻击 __debuginfo() gost-crypto 散列算法 ssl/tls 提升 pgsql 异步支持
php7.0
标量类型声明 返回值类型声明 null合并运算符 太空船操作符(组合比较符) 通过 define() 定义常量数组 匿名类 unicode codepoint 转译语法 closure::call() 为unserialize()提供过滤 intlchar 预期 group use declarations 生成器可以返回表达式 generator delegation 整数除法函数 intp() 会话选项 preg_replace_callback_array() csprng functions 可以使用 list() 函数来展开实现了 arrayaccess 接口的对象 其他特性
php7.1
可为空(nullable)类型 void 函数 symmetric array destructuring 类常量可见性 iterable 伪类 多异常捕获处理 list()现在支持键名 支持为负的字符串偏移量 ext/openssl 支持 aead 通过 closure::fromcallable() 将callables转为闭包 异步信号处理 http/2 server push support in ext/curl
相关推荐:
[课程]php7新特性手册
让你的php7更快之hugepage用法分析
解析php5.6.30与apache2.4.x配置
以上就是php常用的几个版本都有哪些改变的详细内容。