function arraySet($arr_def, &$res_array, $value) { if($size = sizeof($arr_def)) { $key = array_shift($arr_def); if($size > 1) { if (!isset($res_array[$key])) $res_array[$key] = array(); ComplexArray :: arraySet($arr_def, $res_array[$key], $value); } elseif($size == 1) $res_array[$key] = $value; } }