详解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 程式大小
Dec 06 PHP
PHP 强制下载文件代码
Oct 24 PHP
PHP数组交集的优化代码分析
Mar 06 PHP
PHP中break及continue两个流程控制指令区别分析
Apr 18 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
PHP获取MAC地址的函数代码
Sep 11 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
Mar 17 PHP
PHP程序员必须清楚的问题汇总
Dec 18 PHP
10款实用的PHP开源工具
Oct 23 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
用PHP写的一个冒泡排序法的函数简单实例
May 26 PHP
Laravel网站打开速度优化的方法汇总
Jul 16 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中将网页导出为Word文档的代码
2012/05/25 PHP
php输出1000以内质数(素数)示例
2014/02/16 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
linux下为php添加iconv模块的方法
2016/02/28 PHP
可以支持多中格式的JS键盘
2007/05/02 Javascript
jQuery学习笔记之jQuery的事件
2010/12/22 Javascript
通过jQuery源码学习javascript(三)
2012/12/27 Javascript
jQuery判断密码强度实现思路及代码
2013/04/24 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
原生js的弹出层且其内的窗口居中
2014/05/14 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
js实现鼠标经过时图片滚动停止的方法
2015/02/16 Javascript
jquery实现可旋转可拖拽的文字效果代码
2016/01/27 Javascript
nodejs 中模拟实现 emmiter 自定义事件
2016/02/22 NodeJs
BootStrap 页签切换失效的解决方法
2017/08/17 Javascript
Angular6 Filter实现页面搜索的示例代码
2018/12/02 Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
2019/01/16 Javascript
Javascript Dom元素获取和添加详解
2019/09/24 Javascript
解决echarts echarts数据动态更新和dataZoom被重置问题
2020/07/20 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
对于Python的Django框架使用的一些实用建议
2015/04/03 Python
Python每天必学之bytes字节
2016/01/28 Python
python3.6利用pyinstall打包py为exe的操作实例
2018/10/31 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
python实现计算图形面积
2021/02/22 Python
recorder.js 基于Html5录音功能的实现
2020/05/26 HTML / CSS
通信工程专业女生个人求职信
2013/09/21 职场文书
交通法规咨询中心工作职责
2013/11/27 职场文书
老人祝寿主持词
2014/03/28 职场文书
农行心得体会
2014/09/02 职场文书
大学生万能检讨书范例
2014/10/04 职场文书
社区六一儿童节活动总结
2015/02/11 职场文书
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/04/22 无线电
CSS实现切角+边框+投影+内容背景色渐变效果
2021/11/01 HTML / CSS
一文搞懂Golang 时间和日期相关函数
2021/12/06 Golang