从PHP 5.6.x 移植到 PHP 7.0.x 新特性:

1.标量类型声明

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

2.返回值类型声明

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

function test(int $a):int{}

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

3.null合并运算符

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

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

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

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

$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.其他特性

[PHP] 从PHP 5.6.x 移植到 PHP 7.0.x新特性的更多相关文章

  1. 将Asp.Net Core和corefx移植到.Net 4.0

    引言 因为工作内容的原因需要兼容 XP,而 XP 最多支持到.Net Framework 4.0.因此无法享受到 .Net Core 带来的一堆很好用的库,好在无论 corefx 还是 Asp.Net ...

  2. tiny210移植linux内核(3.0.8)杂项

    关于三星芯片nand内存分区文件: linux-3.0.8/drivers/mtd/nand/s3c_nand.c struct mtd_partition s3c_partition_info[] ...

  3. [PHP] 从PHP 5.6.x 移植到 PHP 7.0.x不兼容点

    1.错误和异常处理 1.1 set_exception_handler()函数申明的类型 function handler($e){ var_dump($e); } set_exception_han ...

  4. Ubuntu16.04 ARM平台移植libcurl curl-7.63.0

    libcurl是免费的轻量级的客户端网络库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS,POP3, P ...

  5. [PHP] 2018年终总结

    去掉敏感信息后的不完整版 ==========================================================================2018年12月29日 记 ...

  6. Windows Embedded Compact 7初体验

    Windows Embedded Compact 7初体验 Windows Embedded Compact 7已经出来半年多了,一直没时间搞.最近它又出了Refresh的版本,电脑也换了个1T的硬盘 ...

  7. 愚人的linux内核2440移植札记(超曲折版)

    http://blog.csdn.net/dreambegin/article/details/6904822 原来文章叫--编译内核之初体验.后来想了想,这篇文章让我体验了好多遍.不该叫这么大气的名 ...

  8. 我所理解的Cocos2d-x

    我所理解的Cocos2d-x(完全基于Cocos2d-x3.0,深度剖析计算机图形学,OpenGL ES及游戏引擎架构,全面提升游戏开发相关知识) 秦春林 著   ISBN 978-7-121-246 ...

  9. 千呼万唤始出来:Apache Spark2.0正式发布

    我们很荣幸地宣布,自7月26日起Databricks开始提供Apache Spark 2.0的下载,这个版本是基于社区在过去两年的经验总结而成,不但加入了用户喜爱的功能,也修复了之前的痛点. 本文总结 ...

随机推荐

  1. iOS Socket编程(一)基本概念

    1.Socket的解释 Socket翻译过来中文称为套接字, 这里我找到了一段比较官方的解释Socket是什么东西: Socket是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元,包含进行 ...

  2. Service由浅到深——AIDL的使用方式

    前言 最近有很多朋友问我这个AIDL怎么用,也许由于是工作性质的原因,很多人都没有使用过aidl,所以和他们讲解完以后,感觉对方也是半懂不懂的,所以今天我就从浅到深的分析一下这个aidl具体是怎么用的 ...

  3. php 对比两个数组中的值是否相等

    $a = ['1','2','4','3'];//提交答案 $b = ['2','1','3'];//正确答案 $state = $this->diffArray($b, $a); echo ' ...

  4. vue + ElementUI 关闭对话框清空验证,清除form表单

    前面跟大家提到过 elementUI验证的问题,那么今天就来看看 点击对话框和关闭按钮 怎么清空验证,清空form表单,避免二次点击还会有 验证错误的提示 1.首先在你的对话框 取消按钮 加一个cli ...

  5. [转] 测试环境下将centos6.8升级到centos7的操作记录

    1)查看升级前的版本信息 lsb_release -a LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noa ...

  6. django 的 安全机制

    xss 保护: xss攻击允许用户注入客户端脚本到其他用户的服务器上.通常通过存储恶意脚本到数据库,其他用户通过数据库获取恶意脚本,并在浏览器上呈现:或是使用户点击会引起攻击者javascirpt脚本 ...

  7. 1.2 Percona XtraDB Cluster Limitations

    摘要: 出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读.本文版权归作者所有,欢迎转载,但请保留该 ...

  8. OKR 第一阶段

    性能优化,主要是为了提高用户体验. 1.  根据浏览器的工作原理,dom树解析时,遇到css 以及js 会出现阻塞,为了缩短dom树解析时间,进行了js  增加 async 的异步加载过程 . 原有代 ...

  9. maven项目在eclipse启动报错:java.lang.ClassNotFoundException

    问题: 用eclipse创建maven项目的时候,pom.xml中相关的依赖jar已经导入进去,还会报java.lang.ClassNotFoundException的错误,提示找不到相关的jar包, ...

  10. windows下vim中文乱码处理

    现象:gvim安装后,打开中文utf-8编码的文件中文显示乱码 处理:1.启动gvim8.0,菜单 ”编辑“->"启动设定"在文件最开始处添加如下两行set fileenco ...