private static function _flattenUserKeys($keys, $namespace = null)
{
$flattenedArray = [];
foreach ($keys as $key => $value) {
$fullKey = empty($namespace) ? $key : $namespace;
if (!is_numeric($key) && $namespace != null) {
$fullKey .= '[' . $key . ']';
}
if (is_numeric($key) && is_string($value)) {
$fullKey .= '[' . $value . ']';
}
if (is_array($value)) {
$more = self::_flattenUserKeys($value, $fullKey);
$flattenedArray = array_merge($flattenedArray, $more);
} else {
$flattenedArray[] = $fullKey;
}
}
sort($flattenedArray);
return $flattenedArray;
}