php存储数组在数组中的引用

Wol*_*mec 2 php

我有以下问题.有一些PHP行.

在var_dump中$testArrayA,"def"条目test2不存在,因为它是在添加后$testArrayB添加的$testArrayA.

在我看来,在我的情况下,这$testArrayB不是通过引用存储的$testArrayA.我如何根据参考存储它,我需要做什么才能在var_dump中输入"def"条目?

非常感谢提前

$testArrayA = [];
$testArrayB = [];
$testArrayB["ghi"] = "test1";
$testArrayA["abc"] = $testArrayB;
$testArrayB["def"] = "test2";
Run Code Online (Sandbox Code Playgroud)

var_dump:

array(1) {
  ["abc"]=>
    array(1) {
       ["ghi"]=>
       string(5) "test1"
      }
}
Run Code Online (Sandbox Code Playgroud)

sha*_*eck 7

这只是通过引用传递的问题:

$testArrayA = [];
$testArrayB = [];
$testArrayB["ghi"] = "test1";
$testArrayA["abc"] = &$testArrayB;
$testArrayB["def"] = "test2";
Run Code Online (Sandbox Code Playgroud)

后续代码var_dump($ testArrayA);

array (size=1)
'abc' => &
array (size=2)
  'ghi' => string 'test1' (length=5)
  'def' => string 'test2' (length=5)
Run Code Online (Sandbox Code Playgroud)


xda*_*azz 6

使用:

$testArrayA["abc"] = &$testArrayB;
Run Code Online (Sandbox Code Playgroud)

注意:

与C的指针不同,PHP中的引用是一种通过不同名称访问相同变量内容的方法.