侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

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

2022-07-09 星期六 / 0 评论 / 0 点赞 / 50 阅读 / 1646 字

在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 PHP 7.4。扩展运算符支持参数解包首先存在于 PHP 5.6 中,并且此 RFC 扩展了对数组的使用

在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 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 中数组延展操作符语法知识点,感谢大家的学习和对..的支持。

广告 广告

评论区