Silex中的语言路由

时间:2014-11-22 09:21:37

标签: php routing silex

我正在寻找一种解决方案,我可以在Silex中将不同的URL路由到控制器,以使我的代码更有条理。

问题是我需要使用不同语言路由到同一个controllerProvider的一些路由:

$app->mount("/{_locale}/string-in-english", new App\Controllers\myController());

$app->mount("/{_locale}/string-in-spanish", new App\Controllers\ myController());

其中/ string-in-english和/ string-in-spanish被路由到同一个控制器。

最有可能的是,可能的路由被插入到数据库的表中。

提前问候和感谢。

1 个答案:

答案 0 :(得分:0)

完整的i18n路由非常棘手,您需要使用翻译服务和对可以处理可翻译路径的mount()的单次调用。

看看this article。有一些有趣的评论,作者发表了I18nRoutingServiceProvider

在我看来,Silex在简单的应用程序中使用时会摇摆不定,但是当你开始添加这种功能时它会变得非常困难。有时在Symfony应用程序中实现它们更容易。