如何用其他数组中的指针替换数组



我得到了一个数组,其中的值被拆分为5个数组,每组3个值,然后我得到了更多的数组组对于指针,我要做的是用其他值替换指针数组。

我得到的是:

$a = array(["4", "3", "5"], ["4", "8", "11"], ["4", "11", "5"], ["4", "5", "5"], ["4", "4", "9"]);
$b = array(12); // the value to be placed
$pointers = array([1,2],[2,2],[2,1]);
foreach($pointers as $point)
{
$a1 = array_replace($a[$point[0]], array($point[1] => $b ));
}

预期结果:

["4", "3", "5"], ["4", "8", "12"], ["4", "12", "12"], ["4", "5", "5"], ["4", "4", "9"]

我需要的是保持数组结构不变,并将指向的值替换为12。

我不确定这是正确的方式。

您不需要使用array_replace(),只需使用$pointers中的索引进行分配即可。

$a = array(["4", "3", "5"], ["4", "8", "11"], ["4", "11", "5"], ["4", "5", "5"], ["4", "4", "9"]);
$b = 12; // the value to be placed
$pointers = array([1,2],[2,2],[2,1]);
foreach($pointers as [$p1, $p2])
{
$a[$p1][$p2] = $b;
}
print_r($a);

最新更新