LaravelPackages.net
Acme Inc.
Toggle sidebar
douyasi/locator

Browser Preferred Language Detector

6.858
4
1.0.3
About douyasi/locator

douyasi/locator is a Laravel package for browser preferred language detector. It currently has 4 GitHub stars and 6.858 downloads on Packagist (latest version 1.0.3). Install it with composer require douyasi/locator. Discover more Laravel packages by douyasi or browse all Laravel packages to compare alternatives.

Last updated

Locator

Latest Stable Version Latest Unstable Version License Total Downloads

Description

Browser Preferred Language Detector, detect by browser Accept-Language request header.

Installation

Get Composer, then run in terminal:

cd /path/to/your-project
composer require "douyasi/locator:~1.0"

Usage

Example in Laravel

Route::get('test', function () {
    $detector = app('Douyasi\Locator\PreferredLanguageDetector');
    return $detector->detect(['zh-CN', 'en']);
    //return $detector->get();
    //return $detector->get_languages(['zh-CN,zh', 'en', 'zh-TW'], ['0.8', '0.6', '0.4']);
});

You can use $detector->detect(['zh-CN', 'en']) to replace Request::getPreferredLanguage(['zh-CN', 'en']) in Laravel.

API

Detect your browser preferred language:

$langs = ['zh-CN', 'en'];  //available languages (i18n array) in your web project
$detector->detect($langs);  //return 'zh-CN' or 'en', according to your browser language preference.

Get browser preferrend languages:

$detector->get();

You can get some data (json format) like blow:

[
    {
        "priority": 80,
        "tags": "zh-CN,zh",
        "locales": [
            {
                "language": "zh",
                "region": "CN",
                "script": "",
                "variant1": "",
                "variant2": "",
                "variant3": "",
                "private1": "",
                "private2": "",
                "private3": ""
            },
            {
                "language": "zh",
                "script": "",
                "region": "",
                "variant1": "",
                "variant2": "",
                "variant3": "",
                "private1": "",
                "private2": "",
                "private3": ""
            }
        ]
    },
    {
        "priority": 60,
        "tags": "en",
        "locales": [
            {
                "language": "en",
                "script": "",
                "region": "",
                "variant1": "",
                "variant2": "",
                "variant3": "",
                "private1": "",
                "private2": "",
                "private3": ""
            }
        ]
    },
]

Reference

http://douyasi.com

Copyright (c) 2016 douyasi org by ycrao

Comments