imaddev / laravel-translation
管理您所有 Laravel 翻译的工具
Requires (Dev)
- mockery/mockery: ^1.0.0
- orchestra/testbench: ^4.0
- phpunit/phpunit: ^8.0
- dev-master
- v1.1.4
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.1
- v1.0.0
- v0.3.0
- v0.2.1
- v0.2.0
- v0.1.4
- v0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-dependabot/npm_and_yarn/url-parse-1.5.10
- dev-dependabot/npm_and_yarn/ajv-6.12.6
- dev-dependabot/npm_and_yarn/path-parse-1.0.7
- dev-dependabot/composer/league/flysystem-1.1.4
- dev-analysis-yvm5Vp
- dev-dependabot/npm_and_yarn/postcss-7.0.36
- dev-dependabot/npm_and_yarn/ws-6.2.2
- dev-dependabot/npm_and_yarn/dns-packet-1.3.4
- dev-dependabot/npm_and_yarn/browserslist-4.16.6
- dev-dependabot/npm_and_yarn/lodash-4.17.21
- dev-analysis-NAojAe
- dev-dependabot/composer/laravel/framework-6.20.26
- dev-dependabot/npm_and_yarn/ssri-6.0.2
- dev-dependabot/npm_and_yarn/y18n-4.0.1
- dev-dependabot/npm_and_yarn/elliptic-6.5.4
- dev-analysis-64lrJl
- dev-analysis-YjdOLY
- dev-dependabot/npm_and_yarn/axios-0.21.1
- dev-dependabot/npm_and_yarn/ini-1.3.7
- dev-dependabot/npm_and_yarn/http-proxy-1.18.1
- dev-dependabot/composer/symfony/http-kernel-4.4.13
- dev-dependabot/npm_and_yarn/websocket-extensions-0.1.4
- dev-fix-bindings
- dev-analysis-lK77rQ
This package is auto-updated.
Last update: 2024-09-08 20:18:50 UTC
README
Laravel 应用程序的翻译管理。
关于 Laravel Translation
Laravel Translation 是 Laravel 5 的一个包,允许您在使用 Laravel 的本地化功能时完全控制您的翻译。
该包允许您使用本地文件翻译管理您的翻译,同时也提供了一个数据库驱动器,这对于多服务器设置非常有用。
它提供了一个用户界面,允许您更新现有翻译并添加新翻译到您的应用程序中。
以下是完整的功能列表
- 文件和数据库驱动器
- 数据库翻译加载器(当 Laravel 的翻译检索方法和数据库驱动器自动从数据库中加载翻译时)
- 用户界面以添加新语言以及添加和更新翻译
- Artisan 命令来管理您的翻译
- 扫描您的应用程序以查找缺少的翻译
安装
通过 Composer 安装包
composer require joedixon/laravel-translation
发布配置和资源
php artisan vendor:publish --provider="JoeDixon\Translation\TranslationServiceProvider"
服务提供程序会自动通过 包发现 加载。
使用方法
配置
该包附带一个名为 translation.php
的配置文件,在安装过程中发布到配置目录。以下是设置的概要。
driver [file|database]
选择 file
或 database
。文件翻译使用 Laravel 的本地文件翻译,并支持基于 array
和 json
的语言文件。
route_group_config.middleware [string|array]
将中间件应用于包提供的路由。例如,您可能希望使用 auth
中间件以确保包用户界面仅对登录用户可用。
translation_methods [array]
选择在查找缺少的翻译键时要使用的 Laravel 翻译方法。
scan_paths [array]
选择在查找缺少翻译时要使用的路径。将搜索范围缩小到特定目录将在扫描缺少翻译时提高性能。
ui_url [string]
选择包用户界面可以访问的根 URL。所有路由都将以此值作为前缀。
例如,将此值设置为 languages
将导致 URL 如 translations/{language}/translations
database.languages_table
在使用数据库驱动器时,选择语言表的名称。
database.translations_table
在使用数据库驱动器时,选择翻译表的名称。
驱动器
文件
利用 Laravel 的本地 php 数组和 JSON 基于的语言文件,并公开用户界面来管理包含的翻译。使用用户界面或内置的 Artisan 命令 添加和更新语言和翻译。
数据库
数据库驱动器具有 Laravel 文件化语言文件的所有功能,但将存储移动到数据库中,利用为您的 Laravel 应用程序配置的连接。
它还替换容器中的翻译加载器,因此所有 Laravel 的翻译检索方法(如 __()
、trans()
、@lang()
等)都将从数据库而不是文件中加载相关字符串,而无需更改您的应用程序中的任何代码。这是一个一对一的交换。
要利用数据库驱动器,请确保在配置文件中更新数据库表名并运行迁移。
用户界面
导航到 http://your-project.test/languages(将 languages
更新为与 translation.ui_url
配置设置相匹配)并使用该界面管理您的翻译。
首先,点击您要编辑的语言。在随后的页面上,找到您想要编辑的翻译,点击铅笔图标或文本进行编辑。一旦您从输入框移除焦点,您的翻译就会被保存,并以绿色勾选图标表示。
Artisan 命令
此包包含一系列 Artisan 命令,有助于翻译管理。
translation:add-language
向应用程序添加新语言。
translation:add-translation-key
为应用程序添加新的语言键。
translation:list-languages
列出应用程序中所有可用的语言。
translation:list-missing-translation-keys
列出应用程序中所有没有相应翻译的翻译键。
translation:sync-translations
在驱动器之间同步翻译。如果您有一个现有的应用程序正在使用基于文件的本地语言文件,并希望迁移到数据库驱动器,此命令将非常有用。运行此命令将从语言文件中获取所有翻译并将其插入到数据库中。
translation:sync-missing-translation-keys
此命令将扫描您的项目(使用配置文件中提供的路径)并创建所有缺失的翻译键。此操作可以针对所有语言或单个语言执行。