ここで、slim3 のサンプルFastRoute :
$app->get('/api/search/[{domaine}[/{notused:.+}]]', function ($request, $response, $args) {
return $this->renderer->render($response, 'index.phtml', $args);
});
この FastRoute の「正規表現」([{domaine}[/{notused:.+}]]) では、次のように一致します。
/api/search/sample.com
/api/search/sample.com/test
/api/search/
そして $args['domaine'] は "sample.com" を返します。
しかし、私もこれを一致させたい:
/api/search/http://sample.com
/api/search/https://sample.com
この作品のような新しいルートを追加します:
$app->get('/api/search/http://[{domaine}[/{notused:.+}]]' ...
$app->get('/api/search/https://[{domaine}[/{notused:.+}]]' ...
ただし、1行だけにする方が良いです。
何か案は ?