本文总结分析了php5.6.x到php7.0.x特性。分享给大家供大家参考,具体如下:

php5.6.x到php7.0.x特性

1.标量类型声明

字符串(string), 整数 (int), 浮点数 (float), 布尔值 (bool),callable,array,self,class/interface name

 2.返回值类型声明

定义参数类型和返回值类型

function test(int $a):int{}

如果不按规定传参会返回异常

3.null合并运算符

null合并运算符 (??) ,等同于三元运算符

name=name=_get['name'] ?? "test";echo $name;

4.太空船操作符(组合比较符)

当a小于、等于或大于a小于、等于或大于b时它分别返回-1、0或1。

a<=>a<=>b

5.通过 define() 定义常量数组

define('animals', ['dog','cat','bird']);

6.匿名类

某个函数参数强制类型,使用匿名类完成

interface logger {
public function log(string $msg);
}
function test(logger $logger){
echo $logger->log('aaa');
}
test(new class implements logger {
public function log(string $msg) {
return $msg;
}
});

7.unicode codepoint 转译语法

完整的unicode字符叫codepoint,unicode为每种语言中的每个字符设定了统一并且唯一的二进制编码

8.为unserialize()提供过滤,提供更安全的方式解包不可靠的数据,通过白名单的方式来防止潜在的代码注入

9.预期,assert — 检查一个断言是否为 false

10.group use declarations

从同一 namespace 导入的类、函数和常量现在可以通过单个 use 语句 一次性导入了

11.生成器可以返回表达式

12.generator delegation

13.整数除法函数 intdiv()

14.会话选项

session_start() 可以接受一个 array 作为参数, 用来覆盖 php.ini 文件中设置

15.csprng functions

random_bytes() 和 random_int() 用来产生高安全级别的随机字符串和随机整数

16.可以使用 list() 函数来展开实现了 arrayaccess 接口的对象

17.其他特性