Contao\CoreBundle\Routing\UrlGenerator::prepareAlias PHP Method

prepareAlias() private method

Adds the parameters to the alias.
private prepareAlias ( string $alias, array &$parameters )
$alias string
$parameters array
    private function prepareAlias($alias, array &$parameters)
    {
        if ('index' === $alias) {
            return;
        }
        $hasAutoItem = false;
        $autoItems = $this->getAutoItems($parameters);
        /** @var Config $config */
        $config = $this->framework->getAdapter(Config::class);
        $parameters['alias'] = preg_replace_callback('/\\{([^\\}]+)\\}/', function ($matches) use($alias, &$parameters, $autoItems, &$hasAutoItem, $config) {
            $param = $matches[1];
            if (!isset($parameters[$param])) {
                throw new MissingMandatoryParametersException(sprintf('Parameters "%s" is missing to generate a URL for "%s"', $param, $alias));
            }
            $value = $parameters[$param];
            unset($parameters[$param]);
            if (!$config->get('useAutoItem') || $hasAutoItem || !in_array($param, $autoItems, true)) {
                return $param . '/' . $value;
            }
            $hasAutoItem = true;
            return $value;
        }, $alias);
    }