выдам своего барахла
function a2p($array)
{
return implode('/', $array);
}
function p2a($path)
{
return explode('/', $path);
}
function ap(&$input, $path = null, $set_value = null)
{
if ( !is_null($path) )
{
if ( $path )
$path = p2a($path);
if ( !is_null($set_value) )
{
if ( $path )
eval('$input["' . implode('"]["', $path) . '"] = $set_value;');
else
$input = $set_value;
return $input;
}
else
{
if ( $path )
eval('$value = isset($input["' . implode('"]["', $path) . '"]) ? $input["' . implode('"]["', $path) . '"] : null;');
else
$value = $input;
return $value;
}
}
else
{
return $input;
}
}
p2a - преобразовать путь в массив. путь это/любая/строка/такого/вида
a2p - наоборот
ap - получить или изменить значение по определенному пути
ваш случай
$path = array(1,8,0);
$arArray = array(1 => array(8 => array(0 => 123)));
print ap($arArray, a2p($path));