Symfony路线长度限制

时间:2017-11-11 19:16:20

标签: symfony routes requirements

是否存在路由长度要求? 例如: 我在Stacko上发现了这个。:

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

我希望{8}限制它仅在“shortUrl”恰好是8个字符长时才被调用,但这不起作用。

为了您的理解:
我建立了一个URL缩短器,现在我面临这个问题:
当用户输入我的网站为他创建的URL别名并重定向他时,上面的路由被调用,这可以按预期工作。 该别名由大小写字母和数字(随机)组成。
但是当他想查看他的个人资料(localhost / profile)时,上面的路线被调用而不是个人资料路线,尽管“个人资料”部分只有7个字符长。

1 个答案:

答案 0 :(得分:0)

试试这个

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

您需要使用正则表达式符号^和$来表示“开头”和“结束时”。同样在正则表达式模式中,您忘记了TopCase匹配的A和Z之间的减号。