php - 拉拉维尔 5.4 : Translate routes

标签 php laravel laravel-5.4

有没有一种简单的方法可以在 Laravel 5.4 中翻译我的路线。我的翻译文件位于此处:

/resources
    /lang
        /en
            routes.php
        /de
            routes.php

在我的 web.php 中,我定义了这样的路由:

Route::get('/{locale}', function ($locale) {
    App::setLocale($locale);

    return view('welcome');
});

Route::get('{locale}/contact', 'ContactController@index');

我已经找到了非常详细的解决方案或 Laravel 4 的解决方案。我确信 Laravel 也提供了一个简单的解决方案。有人可以向我解释最好的方法吗?

谢谢。

最佳答案

我们通常这样做

获取当前语言:

$request = request()->segment(1);
$language = null;
if (!empty($request) && in_array($request,config('translatable.locales'))) {
  $language = $request;
  App::setLocale($language);
} else {
    $language = 'nl';
}

路线:

Route::group(['prefix' => $language], function () {
    Route::get(trans('routes.newsletter'), array('as' => 'newsletter.index', 'uses' => 'NewsletterController@index'));

关于php - 拉拉维尔 5.4 : Translate routes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42527880/

相关文章:

php - 在 wordpress 简码内的正文末尾添加 css

php - 操纵 Joomla 内容

php - 根据用户群的 Laravel 5.6 验证唯一规则(高级)

linux - 避免 php artisan 队列 :work : Queue Driver - Redis or Database (Laravel 5. 4)

laravel - 在 laravel 5.4 中成功重置他/她的密码后返回登录页面

javascript - Laravel 尝试从数据库获取导航栏列表

php - 使用一个脚本标签的多个外部 JavaScript 文件

php - mysql & php 自动递增id并插入数据

php - SQL/Laravel 构建查询

javascript - Laravel 和 Ajax - 将数据插入表而不刷新