在 Yii2 中为 url 添加语言

Add language to url in Yii2

我有以下 url 例如:

http://mywebsite.com/testing/test

我希望它根据当前语言变成这样:

http://mywebsite.com/en/testing/test

我将语言存储在:Yii::$app->language

我试图修改我的 URLManager (/config/web.php),但它对我不起作用。

'urlManager' => [
  'class' => 'yii\web\UrlManager',
  'showScriptName' => false,
  'enablePrettyUrl' => true,
  'rules' => [
    '/login' => 'site/login',
    '/logout' => 'site/logout',
    Yii::$app->language.'/'.'<controller:\w+>s'=>'<controller>/index',
    Yii::$app->language.'/'.'<controller:\w+>/<id:\d+>/<title:\w+>'=>'<controller>/view',
    Yii::$app->language.'/'.'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
    Yii::$app->language.'/'.'<controller:\w+>/<action:\w+>/<id:\d+>/*'=>'<controller>/<action>',
  ],
],

你能帮帮我吗?

我找到了一个扩展。即使您不想使用它,您也可以查看它的代码以了解它是如何工作的。 (更改模式/路由/等)

https://github.com/codemix/yii2-localeurls