1. 程式人生 > >laravel laravel-admin 語言包的問題 trans('demo.user_not_exists'); trans("admin::passwords.password");

laravel laravel-admin 語言包的問題 trans('demo.user_not_exists'); trans("admin::passwords.password");

語言包的問題
laravel 5.3 更換語言包
96 假行僧396741 關注

2016.12.15 15:36* 字數 280 閱讀 4457評論 0喜歡 4

Laravel-lang

Laravel 5 語言包,包含 52 種語言, 基於 caouecs/Laravel-lang.

trans()
函式根據你的 [本地化檔案] 翻譯指定的語句
安裝

composer require "overtrue/laravel-lang:~3.0"

Laraval 5.*
完成上面的操作後,將專案檔案 config/app.php 中的下一行
Illuminate\Translation\TranslationServiceProvider::class,
替換為:
Overtrue\LaravelLang\TranslationServiceProvider::class,

Lumen
在 bootstrap/app.php 中新增下面這行:
$app->register(Overtrue\LaravelLang\TranslationServiceProvider::class);

配置

Laravel

修改專案語言 config/app.php:
'locale' => 'zh-CN',

Lumen
在 .env 檔案中修改語言:
APP_LOCALE=zh-CN

使用

和正常使用一樣,你如果需要額外新增語言項,請在 resources/lang/zh-CN/
下建立你自己的檔案即可,也可以建立同樣的檔案來替換掉預設的語言部分。

新增自定義語言項
例如建立檔案resources/lang/zh-CN/demo.php:

<?php
  return [
   'user_not_exists' => '使用者不存在',
   'email_has_registed' => '郵箱 :email 已經註冊過!'
  ];
然後在任何地方:

// 使用者不存在echo
\resources\lang\zh_CN\demo.php
echo trans('demo.user_not_exists');


\resources\lang\admin\zh_CN\passwords.php
 echo trans("admin::passwords.password");



// 郵箱 
[email protected]
已經註冊過! trans( 'demo.email_has_registed', ['email' => '[email protected]'] ); 替換掉預設的語言項 我們假設想替換掉密碼重置成功的提示文字為例,建立 resources/lang/zh-CN/passwords.php <?php return [ 'reset' => '您的密碼已經重置成功了,你可以使用新的密碼登入了!' ]; 只放置你需要替換的部分即可。 舉個例子: $ php artisan lang:publish zh-CN,zh-HK,th,tk 如果我的文章,給您帶來了幫助那麼您請點個贊,且您願意幫助提升相關文章的更新速度和質量,打賞一下. 讚賞支援