2017-11-11 12 views
0

経路長の要件はありますか?例えば : 私はStackoにこれを見つけた:私は「SHORTURL」は、正確に8文字の長さであるが、それが動作しない場合、{8}と呼ぶことだけにそれを制限することが望まSymfonyの経路長の制限

/** 
* @Route("/{shortUrl}", requirements={„shortUrl" : "[a-zA-Z0-9]{8}"}) 
* @method({"GET"}) 
*/ 

。あなたの理解のために

は:
私は、URL短縮サービスを構築し、今私は、この問題に直面している:
ルートは上記のユーザーが、この作品を自分のサイトには彼のために作成したURLエイリアスを入力し、彼をリダイレクトするときに呼び出されます予想通り。 このエイリアスは、大文字と小文字のアルファベットと数字(ランダム)で構成されています。
しかし、プロファイル(localhost/profile)を表示したいときは、プロファイルルートの代わりに上記ルートが呼び出されますが、 "profile"パートは長さがわずか7文字です。

答えて

0

は、あなたが「で始まり」と「で終わる」と言って正規表現の記号^と$を使用する必要があり、この

/** 
* @Route("/{shortUrl}", requirements={"shortLink" : "^[a-zA-Z0-9]{8}$"}) 
* @method({"GET"}) 
*/ 

を試してみてください。また、あなたの正規表現パターンでは、UpperCaseのマッチングのために、AとZの間のマイナス記号を忘れていました。

+0

ありがとうございました!完璧に動作します!私はそれに応じて私の投稿を変更した。私はupvotedしかし、それは私がここに新しいのでカウントしません。 – Moses

+0

後で戻って投票したい場合は問題ありません。 – Mz1907

関連する問題