ericlagarda/locally

Laravel 5 用户首选本地化

1.0.1 2016-12-07 15:21 UTC

This package is auto-updated.

Last update: 2024-09-12 22:55:34 UTC


README

Laravel 5 用户首选本地化

此包允许用户设置首选网站本地化。区域设置基于ISO 639-1标准。它将自动切换网站语言到用户偏好。您只需安装它并为用户设置一个区域设置即可。

安装

您可以通过composer安装此包

composer require ericlagarda/locally

然后,您必须通过在config/app.php中添加以下内容来配置服务提供者

'providers' => [
  ...
  Smartisan\Locally\LocallyServiceProvider::class,
];

此外,您需要在Kernel.php中添加中间件到web组

'web' => [
            ...
            \Smartisan\Locally\Http\Middlewares\LocallyMiddleware::class
        ],

您必须发布迁移

php artisan vendor:publish --provider="Smartisan\Locally\LocallyServiceProvider" --tag="migrations"

不要忘记迁移您的表

php artisan migrate

最后,将包特质添加到您的User模型中。

class User
{
    use LocallyTrait;
}

可选地,您可以在config/app.php中添加Laravel Facade和别名

'aliases' => [
  ...
  'Locally'   => \Smartisan\Locally\Facades\Locally::class
];

用法

设置用户区域

如果给定的语言代码不存在,则将抛出异常。

$user->setLocale('en');

获取用户首选区域

如果用户区域未设置,则返回系统默认区域。

$user->getLocale(); //en

删除用户首选区域

$user->removeLocale();

支持的区域设置

通过扫描resources/lang文件夹,将返回支持的区域设置数组。

Locally::getSupportedLocales();

获取语言代码/名称

两个辅助函数用于获取语言代码或名称

Locally::getLanguageCodeByName('english'); //en
Locally::getLanguageNameByCode('en'); //English

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件