Я сделал функцию, изменяющую элемент массива, находящегося в другом массиве(3 уровня вложенности). Но она работает с фиксированным количеством уровней вложенности. А как её переделать так, чтобы вторым аргументом она принимала массив ключей (то есть работала бы с любым уровнем вложенности), а третьим значение($value)?
Код:
Dim $h[2]
Dim $hh[2]=[3]
Dim $hhh[3]=[55,66,77]
$hh[1]=$hhh
$h[0]=$hh
e111($h,0, 1,1,"bingo")
Func e111(byref $arr,$key1,$key2, $key,$value) ;Редактирует значение одномерного массива в одномерном массиве
local $Temp1 =($arr[$key1])[$key2]
$Temp1[$key] =$value
local $Temp2=$arr[$key1]
$Temp2[$key2]=$Temp1
$arr[$key1]=$Temp2
EndFunc