php - symfony 路由器在所有语言环境中匹配 url
问题描述
简短的问题:如何使用 Symfony 路由器在所有语言环境中验证 url?
长部分:
- 因此,我们有一个特定的动态路由,例如:en.web.site/{dynamic_user_name}
- 网站有多种语言,例如:en.web.site/、de.web.site/、ru.web.site/
- 并非所有动态名称都是允许的,例如:en.web.site/login
我们需要实现一个dynamic_user_name部分验证。最好的方法是
$router = $container->get('router');
$result = $router->getMatcher()->match('/'.$dynamic_user_name);
但是,symfony router-matcher 里面只有一个语言环境。现在我需要像这样的黑客来做到这一点:
$router = $container->get('router.en');
$result = $router->getMatcher()->match('/'.$dynamic_user_name);
....
all N locales
....
$router = $container->get('router.ru');
$result = $router->getMatcher()->match('/'.$dynamic_user_name);
如何在不使用其语言环境实例化所有路由器的情况下进行此验证?
解决方案
推荐阅读
- python - Python - 检查用户输入是否匹配条件的函数
- java - 在 Java 中使用变量创建对象和调用方法
- python - SyntaxError:在 AOSP 代码中 repo init 的语法无效
- excel - 使用 VBA 从多个工作表中复制数据
- r - 如何为折线图手动添加图例
- laravel - Laravel 作曲家需要 laravel/ui^2.4 也不起作用。1.0 --dev 也不工作
- web-worker - 尝试将 libsodium 与 web worker 错误一起使用 TypeError: sodium.crypto_pwhash is not a function
- c++ - 使用带有 2d 向量的 push_back 时出现分段错误
- mysql - codeigniter 4 在选择查询中选择
- php - 我正在尝试使用 php 连接到我的数据库,我只是得到一个空白页