加入收藏 | 设为首页 | 会员中心 | 我要投稿 南阳站长网 (https://www.0377zz.cn/)- 专有云、图像技术、AI硬件、云计算、数据集成!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-07-26 09:33:19 所属栏目:PHP教程 来源:互联网
导读:在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 PHP 7.4。 PHP7.4数组延展 PHP7.4操作符 扩展运算符支持参数解包首先存在于 PHP 5.6 中,并且此 RFC 扩展了对数组的使用;扩展可以支持 Traversable 的数组
  在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 PHP 7.4。
 
  PHP7.4数组延展 PHP7.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 一致,不支持字符串键,遇到字符串键后,将抛出可恢复的错误。
 

(编辑:南阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读