PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

PHP 7.4 新语法:数组延展操作符

步履不停
步履不停 原创
2019-06-21 15:33:34 5040浏览

在数组表达式中对展开操作符(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 <p>不支持字符串键;你只能使用索引数组。 RFC 的作者对关键的支持做了如下说明:</p><blockquote><p>为了使行为与 <a href="https://wiki.php.net/rfc/argument_unpacking">argument unpacking</a> 一致,不支持字符串键。遇到字符串键后,将抛出可恢复的错误。</p></blockquote><p class="ql-align-justify" style="border: 0px; margin-top: 0.63em; margin-bottom: 1.8em; padding: 0px; counter-reset: list-1 0 list-2 0 list-3 0 list-4 0 list-5 0 list-6 0 list-7 0 list-8 0 list-9 0; text-align: justify; color: rgb(25, 25, 25); font-family: " pingfang sc arial simsun sans-serif white-space: normal background-color: rgb><span style="margin: 0px; padding: 0px; color: rgb(61, 70, 77); font-family: " helvetica neue sc tahoma arial sans-serif background-color: rgb>更多PHP相关技术文章,请访问</span><a href="http://www.php.cn/php-weizijiaocheng.html" target="_self" style="margin: 0px; padding: 0px; color: rgb(146, 208, 80); font-family: " helvetica neue sc tahoma arial sans-serif white-space: normal background-color: rgb text-decoration-line: none><span style="margin: 0px; padding: 0px;">PHP教程</span></a><span style="margin: 0px; padding: 0px; color: rgb(61, 70, 77); font-family: " helvetica neue sc tahoma arial sans-serif background-color: rgb>栏目进行学习!</span></p>
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。