从PHP数组读取时,[]的意思是什么?

前端之家收集整理的这篇文章主要介绍了从PHP数组读取时,[]的意思是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在为 PHP写一个解析器,虽然搞乱了一些第三方代码,但我遇到了一个关于[]运算符的奇怪案例.

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

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

将在数组$a的末尾添加1.

在前面提到的代码中,我看到了这样的一行:

$r =& $a[];

当我试图删除&时,我得到了一个相当预期的致命错误

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/132012.html

猜你在找的PHP相关文章