function structure_array_get($array, $key, $default = NULL) { if (is_null($key)) { return $array; } foreach (explode(':', $key) as $segment) { if (!is_array($array) or !array_key_exists($segment, $array)) { return Structure_Helper::resolveValue($default); } $array = $array[$segment]; } return $array; }