我想知道在Silex中实现所需内容的最佳方式是什么(见下文)。
这就是我想要的:
谢谢
答案 0 :(得分:0)
您可以查看http://silex.sensiolabs.org/doc/organizing_controllers.html
特别是:
$app->mount('/blog', $blog);
所以使用这个我觉得你可以这样做:
$app->mount('/{_locale}', $site);
我没有尝试过,但我认为它会起作用,请让我知道:)。
答案 1 :(得分:0)
对我来说,这是Silex v2.x最简单,最干净的选择:
安装silex-local软件包
composer require pmaxs/silex-locale "^2.0"
将LocalServiceProvidet添加到app.php文件中:
$app->register(new Pmaxs\Silex\Locale\Provider\LocaleServiceProvider(), [
'locale.locales' => ['en', 'ca', 'es'],
'locale.default_locale' => 'en',
'locale.resolve_by_host' => false,
'locale.exclude_routes' => ['^_'],
]);
$app->register(new Silex\Provider\LocaleServiceProvider(), []);
这样,您就不必在端点中添加任何额外内容,而且默认情况下都会处理所有内容。
请查看https://github.com/pmaxs/silex-locale以获取有关Silex v1.x的信息。