gpt4 book ai didi

php - 从 PHP 数组读取时 [] 是什么意思?

转载 作者:可可西里 更新时间:2023-11-01 13:11:42 24 4
gpt4 key购买 nike

我一直在为 PHP 编写解析器,在处理一些第三方代码时,我遇到了一个关于 [] 运算符的奇怪情况。

通常,[] 在赋值左侧没有键的情况下使用,意思是“作为最后一个元素添加”。

$a = array();
$a[] = 1;

会在数组 $a 的末尾加 1。

虽然在上述代码中,我看到了这样一行:

$r =& $a[];

当我尝试删除 & 时,出现了意料之中的 fatal error :

Fatal error: Cannot use [] for reading

不过,有了 &,PHP 就不会提示了。表达式的含义是什么

& $a[];

?

最佳答案

语法的意思是“使用对 $a[] 的引用”或对最新创建的数组元素的引用。

<?php
$a=array( );
$a[] = "a";
$a[] = "b";

print_r($a);

$r =& $a[];

print_r($a);

$r = "c";

print_r($a);

产生:

Array
(
[0] => a
[1] => b
)
Array
(
[0] => a
[1] => b
[2] =>
)
Array
(
[0] => a
[1] => b
[2] => c
)

关于php - 从 PHP 数组读取时 [] 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3908576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com