kuenzelit/auto-lang

一个用于在Laravel应用程序中自动检测并设置区域设置的包

dev-master 2015-02-02 21:15 UTC

This package is not auto-updated.

Last update: 2024-09-18 05:52:38 UTC


README

AutoLang是一个小型Laravel应用程序包,它可以自动检测用户的浏览器语言,并通过App::setLocale()命令设置此语言。

它使用Session临时保存语言,因此无需在每次请求中检测语言。此外,您还可以告诉AutoLang使用哪种语言,例如,如果用户想要切换到浏览器设置以外的其他语言。

安装

获取包

使用命令行获取AutoLang

composer require kuenzelit/auto-lang:dev-master

或者 在您的composer.json文件中添加此行

"kuenzelit/auto-lang": "dev-master",

服务提供者

将服务提供者添加到您的app.php文件中的提供者列表

"Kuenzelit/AutoLang/AutoLangServiceProvider",

别名

如果您愿意,可以通过在aliases数组中添加此行来注册别名

'AutoLang' => 'Kuenzelit\AutoLang\Facades\AutoLang',

配置

您可以使用Artisan发布配置文件并编辑它以指定您提供的语言

php artisan config:publish kuenzelit/auto-lang

界面

AutoLang-Facade提供了4个方法:setgetavailableLanguagesdetectLanguage

/**
 * Overrides the currently detected language and sets it to the $lang param.
 * $lang has to be from the array of available languages.
 * 
 * @param $lang
 * @throws \Exception
 */
public function set($lang)


/**
 * Returns the current language.
 * @return mixed
 */
public function get()


/**
 * Returns the array of available languages. Can be set in the packages config.php.
 *
 * @return array
 */
public function availableLanguages()


/**
 * Returns the language of the users browser.
 *
 * @return string
 */
public function detectLanguage()