private function addValue(&$array, $name, $value)
{
$nameParts = preg_split('/\\]\\[|\\[/s', $name);
$current =& $array;
foreach ($nameParts as $namePart) {
$namePart = trim($namePart, ']');
if ($namePart === '') {
$current[] = [];
$lastKey = array_pop(array_keys($current));
$current =& $current[$lastKey];
} else {
if (!isset($current[$namePart])) {
$current[$namePart] = [];
}
$current =& $current[$namePart];
}
}
$current = $value;
}