$value) { $this->_setArrayValue($output, $key, $value); } return $output; } /** * Set array value by path * * @param array &$container * @param string $path * @param string $value * @return void */ protected function _setArrayValue(array &$container, $path, $value) { $segments = explode('/', $path); $currentPointer = & $container; foreach ($segments as $segment) { if (!isset($currentPointer[$segment])) { $currentPointer[$segment] = []; } $currentPointer = & $currentPointer[$segment]; } $currentPointer = $value; } }