我创建了一个Array并将Array放在另一个Array中。我想现在修改数组,但代码永远不会修改它 这是创建部分:
$arr_row_name = array();
for($nrow=0;$nrow < $numRows;$nrow++)
{
$arr_slot_name = array();
for($nsp=0;$nsp < $numServProvider + 1;$nsp++)
{
$arr_slot_name[] = "Closed";
}
//Add Slot to the row.......
$arr_row_name[] = $arr_slot_name;
}
这是我尝试访问数组并对其进行修改的部分。
$arr_row_length = count($arr_row_name);
for($x=0;$x<$arr_row_length;$x++)
{
$arr_slot_name = $arr_row_name[$x];
$arr_slot_length = count($arr_slot_name);
for($slot=0;$slot<$arr_slot_length;$slot++)
{
$arr_slot_name[$slot] = "Open";
}
}
答案 0 :(得分:1)
在第二段代码中,更改:
$arr_slot_name = $arr_row_name[$x];
为:
$arr_slot_name = &$arr_row_name[$x];
您拥有它的方式,您正在将$arr_row_name[$x]
复制到$arr_slot_name
...在第二个选项中,您将通过引用分配它,并且可以更改原始文件。 ..