laravel 5.2在app.php中设置默认语言环境不起作用

时间:2016-05-13 04:18:58

标签: php laravel laravel-5.2

我想将en的默认语言环境设置为zh-tw,我在\ config \ app.php中将locale ='en'更改为locale ='zh-tw',

'locale' => 'zh-tw',

但视图继续使用'resources \ lang \ en',

我也尝试了但都没有用:
已添加APP_LOCALE in .env=zh-tw
运行php artisan cache:clear

为什么\ config \ app.php语言环境设置在laravel中无效且无意义?

除了在每个控制器中运行setlocale('zh-tw')或创建中间件来设置语言之外,还有其他最简单的方法可以在几秒钟内更改默认语言环境吗?

5 个答案:

答案 0 :(得分:2)

要设置区域设置并使其正常工作,您需要执行以下配置:

1)首先在\resources\lang\YOUR_LOCALE_NAME内创建您的语言环境文件夹。

2)然后根据需要添加文件messages.php。具有以下结构:

<?php

return array(
    'welcome' => 'Welcome to our application'
);

3)然后转到\config\app.php并将区域设置设为LOCALE_FOLDER_NAME

4)请务必在fallback_locale中设置app.php,以便在找不到YOUR_LOCALE_NAME的情况下使用split()

答案 1 :(得分:1)

修改 hideDefaultLocaleInURL 文件中的 config/laravellocalization.php 参数。

发件人:

  

'hideDefaultLocaleInURL'=&gt;假

  

'hideDefaultLocaleInURL'=&gt;真

答案 2 :(得分:0)

只需转到config/app.php并寻找locale键,然后根据需要进行更改即可

答案 3 :(得分:0)

要解决此问题,您需要按照以下说明进行操作:

  1. 首先将您的语言环境文件夹放在\ resources \ lang \ LOCALE_NAME中。

  2. 然后您必须添加具有以下结构的文件:

    <?php return [    
     'reset' => 'Your password has been reset!',
     'sent' => 'We have emailed your password reset link!',
     'throttled' => 'Please wait before retrying.',
     'token' => 'This password reset token is invalid.',
     'user' => "We can't find a user with that email address.",];
    
  3. 然后,您必须转到\ config \ app.php并将语言环境设置为您的LOCALE_FOLDER_NAME。

    'locale'=>'LOCALE_NAME',

  4. 此后,您必须清除配置缓存。转到终端并粘贴此代码以清除它。

    php artisan config:cache

*注意: 有时您可能会收到如下错误:

Illuminate\Contracts\Container\BindingResolutionException 

  Target class [view.engine.resolver] does not exist.

只需在系统终端的应用程序根目录中运行以下代码即可。

composer dump-autoload

答案 4 :(得分:0)

    在laravel项目的根目录中
  1. 运行php artisan config:cache命令
  2. 检查是否正常
  3. 转到 / bootstrap / cache 地址以找到 config.php 并将其删除(如果存在)