在PHP中有没有方法通过引用在数组中获取数组?

在PHP中有没有方法通过引用在数组中获取数组?,php,pass-by-reference,Php,Pass By Reference,其他答案描述了如何在PHP中通过引用将变量传递到函数中,并在函数中修改它 但是我想通过引用将变量传递到函数中,并在函数调用之后修改它。在我的PHP生活中,我曾多次尝试过这样做,但都没有成功 例如: $arr=['a'=>['b'=>'B']]; // An array inside an array $inside=[]; GetInsideArray($arr,$inside); $inside['b']='C'; ... (other similar modifications

其他答案描述了如何在PHP中通过引用将变量传递到函数中,并在函数中修改它

但是我想通过引用将变量传递到函数中,并在函数调用之后修改它。在我的PHP生活中,我曾多次尝试过这样做,但都没有成功

例如:

$arr=['a'=>['b'=>'B']]; // An array inside an array
$inside=[];
GetInsideArray($arr,$inside);
$inside['b']='C';
... (other similar modifications omitted)
// At this point, $inside['b'] is 'C' but $arr['a']['b'] is still 'B'
function GetInsideArray($arr,&$inside)
    {
    $inside=$arr['a'];
    } // GetInsideArray

有没有一种简单的方法来实现这一点?

在这种情况下,如果添加
print\r($inside),您将创建一个名为
$inside
的新变量
调用
GetInsideArray()
后,它将显示一个新变量,该变量仅包含数组的一个元素。在通过引用或值传递数组之前,必须先创建数组:)简而言之,这是
GetInsideArray($arr,$inside)
正在传递一个尚不存在的数组,至少在您显示的代码中,usI希望函数GetInsideArray创建$inside。我添加了行“$inside=[];”,通过给$inside一个初始值来回答这些早期的评论。我希望该值被数组元素“$arr['a']”覆盖。