本文总结分析了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