Параметр маршрута Slim 3

Я столкнулся со странной квадратной скобкой в ​​Slim-Skeleton route.php

$app->get('/[{name}]', function (Request $request, Response $response, array $args) {
    // Sample log message
    $this->logger->info("Slim-Skeleton '/' route");

    // Render index view
    return $this->renderer->render($response, 'index.phtml', $args);
});

Зачем использовать квадратную скобку? Я пытался посмотреть документацию, но она ничего мне не дает.


person Terry Djony    schedule 15.10.2017    source источник


Ответы (2)


Из документации:

Дополнительные сегменты

Чтобы сделать раздел необязательным, просто заключите его в квадратные скобки.

Таким образом, маршрут $app->get('/[{name}]' соответствует любой строке URL, включая отсутствие /.

person Don't Panic    schedule 15.10.2017

Квадратные скобки означают, что параметр маршрута является необязательным.

Кроме того, части маршрута, заключенные в [...], считаются необязательными, так что /foo[bar] будет соответствовать как /foo, так и /foobar. Дополнительные детали поддерживаются только в конце маршрута, а не в его середине. - nikic/FastRoute

Slim построен на основе FastRoute. Подробнее о синтаксисе маршрутизации FastRoute см. в разделе определение маршрутов. .

person Scriptonomy    schedule 15.10.2017