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

时间:2022-06-14 08:21:43

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

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

1.标量类型声明

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

 2.返回值类型声明

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

?
1
function test(int $a):int{}

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

3.null合并运算符

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

?
1
name=name=_GET['name'] ?? "test";echo $name;

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

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

?
1
a<=>a<=>b

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

?
1
define('ANIMALS', ['dog','cat','bird']);

6.匿名类

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

?
1
2
3
4
5
6
7
8
9
10
11
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.其他特性

希望本文所述对大家PHP程序设计有所帮助。

原文链接:https://www.cnblogs.com/opensmarty/p/10629326.html