详解PHP 7.4 中数组延展操作符语法知识点


Posted in PHP onJuly 19, 2019

在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 PHP 7.4。

详解PHP 7.4 中数组延展操作符语法知识点

扩展运算符支持参数解包首先存在于 PHP 5.6 中,并且此 RFC 扩展了对数组的使用;扩展可以支持 Traversable 的数组和对象。这是 RFC 的一个基本示例:

$parts = ['apple', 'pear'];
$fruits = ['banana', 'orange', ...$parts, 'watermelon'];
// ['banana', 'orange', 'apple', 'pear', 'watermelon'];

以下是进一步的示例:

$arr1 = [1, 2, 3];
$arr2 = [...$arr1]; // [1, 2, 3]
$arr3 = [0, ...$arr1]; // [0, 1, 2, 3]
$arr4 = array(...$arr1, ...$arr2, 111); // [1, 2, 3, 1, 2, 3, 111]
$arr5 = [...$arr1, ...$arr1]; // [1, 2, 3, 1, 2, 3]

function getArr() {
 return ['a', 'b'];
}
$arr6 = [...getArr(), 'c']; // ['a', 'b', 'c']

$arr7 = [...new ArrayIterator(['a', 'b', 'c'])]; // ['a', 'b', 'c']

function arrGen() {
  for($i = 11; $i < 15; $i++) {
    yield $i;
  }
}
$arr8 = [...arrGen()]; // [11, 12, 13, 14]

不支持字符串键;你只能使用索引数组。 RFC 的作者对关键的支持做了如下说明:

为了使行为与 argument unpacking 一致,不支持字符串键。遇到字符串键后,将抛出可恢复的错误。

以上就是本次介绍PHP 7.4 中数组延展操作符语法知识点,感谢大家的学习和对三水点靠木的支持。

PHP 相关文章推荐
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
May 06 PHP
那些年我们错过的魔术方法(Magic Methods)
Jan 14 PHP
PHP中$_FILES的使用方法及注意事项说明
Feb 14 PHP
成为好程序员必须避免的5个坏习惯
Jul 04 PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 PHP
基于php判断客户端类型
Oct 14 PHP
PHP用户验证和标签推荐的简单使用
Oct 31 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
Mar 09 PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 PHP
PHP 观察者模式深入理解与应用分析
Sep 25 PHP
Laravel 实现添加多语言提示信息
Oct 25 PHP
PHP配置文件php.ini中打开错误报告的设置方法
Jan 09 PHP
php的优点总结 php有哪些优点
Jul 19 #PHP
Yii框架页面渲染操作实例详解
Jul 19 #PHP
Yii2 queue的队列使用详解
Jul 19 #PHP
thinkphp5.1框架模板布局与模板继承用法分析
Jul 19 #PHP
Yii2.0框架模型添加/修改/删除数据操作示例
Jul 18 #PHP
Yii2.0框架模型多表关联查询示例
Jul 18 #PHP
php和redis实现秒杀活动的流程
Jul 17 #PHP
You might like
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
2015/05/25 PHP
php防止用户重复提交表单
2015/11/02 PHP
PHP简单检测网址是否能够正常打开的方法
2016/09/04 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
对 lightbox JS 图片控件进行了一下改造, 使其他支持复杂的图片说明
2010/03/20 Javascript
防止页面被iframe(兼容IE,Firefox火狐)
2010/07/04 Javascript
jquery 使用点滴函数代码
2011/05/20 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
ECMAScript6新增值比较函数Object.is
2015/06/12 Javascript
使用AngularJS中的SCE来防止XSS攻击的方法
2015/06/18 Javascript
老生常谈javascript变量的命名规范和注释
2016/09/29 Javascript
angular2倒计时组件使用详解
2017/01/12 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
ng-alain的sf如何自定义部件的流程
2020/06/12 Javascript
[06:07]辉夜杯现场观众互动 “比谁远送显示器”
2015/12/26 DOTA
Python中http请求方法库汇总
2016/01/06 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
Scrapy模拟登录赶集网的实现代码
2020/07/07 Python
python与c语言的语法有哪些不一样的
2020/09/13 Python
Python抖音快手代码舞(字符舞)的实现方法
2021/02/07 Python
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
数组越界问题
2015/10/21 面试题
高中生学期学习自我评价
2014/02/24 职场文书
合作协议书
2014/04/23 职场文书
纪念九一八事变83周年国旗下讲话稿
2014/09/15 职场文书
2014年民政工作总结
2014/11/26 职场文书
针对吵架老公保证书
2015/05/08 职场文书
2016春季运动会前导词
2015/11/25 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
导游词之无锡梅园
2019/11/28 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
MySQL删除和插入数据很慢的问题解决
2021/06/03 MySQL
如何用H5实现好玩的2048小游戏
2022/07/23 HTML / CSS