src/EventListener/LocaleListener.php
public function getBrowserAcceptLanguages(Request $request)
    {
        $browserLanguages = [];

        if (strlen($request->server->get('HTTP_ACCEPT_LANGUAGE')) == 0) {
            return [];
        }

        $languages = $this->splitHttpAcceptHeader(
            $request->server->get('HTTP_ACCEPT_LANGUAGE')
        );
        foreach ($languages as $lang) {
            if (strstr($lang, '-')) {
                $codes = explode('-', $lang);
                if ($codes[0] == 'i') {
                    // Language not listed in ISO 639 that are not variants
                    // of any listed language, which can be registered with the
                    // i-prefix, such as i-cherokee
                    if (count($codes) > 1) {
                        $lang = $codes[1];
                    }
                } else {
                    for ($i = 0, $max = count($codes); $i < $max; ++$i) {
                        if ($i == 0) {
                            $lang = strtolower($codes[0]);
                        } else {
                            $lang .= '_'.strtoupper($codes[$i]);
                        }
                    }
                }
            }

            $browserLanguages[] = $lang;
        }

        return $browserLanguages;
    }
public function getBrowserAcceptLanguages(Request $request)
    {
        $browserLanguages = [];

        if (strlen($request->server->get('HTTP_ACCEPT_LANGUAGE')) == 0) {
            return [];
        }

        $languages = $this->splitHttpAcceptHeader(
            $request->server->get('HTTP_ACCEPT_LANGUAGE')
        );
        foreach ($languages as $lang) {
            if (strstr($lang, '-')) {
                $codes = explode('-', $lang);
                if ($codes[0] == 'i') {
                    // Language not listed in ISO 639 that are not variants
                    // of any listed language, which can be registered with the
                    // i-prefix, such as i-cherokee
                    if (count($codes) > 1) {
                        $lang = $codes[1];
                    }
                } else {
                    for ($i = 0, $max = count($codes); $i < $max; ++$i) {
                        if ($i == 0) {
                            $lang = strtolower($codes[0]);
                        } else {
                            $lang .= '_'.strtoupper($codes[$i]);
                        }
                    }
                }
            }

            $browserLanguages[] = $lang;
        }

        return $browserLanguages;
    }
public function getBrowserAcceptLanguages ( Request $ request ) { $ browserLanguages = [ ] ; if ( strlen ( $ request -> server -> get ( 'HTTP_ACCEPT_LANGUAGE' ) ) == 0 ) { return [ ] ; } $ languages = $ this -> splitHttpAcceptHeader ( $ request -> server -> get ( 'HTTP_ACCEPT_LANGUAGE' ) ) ; foreach ( $ languages as $ lang ) { if ( strstr ( $ lang , '-' ) ) { $ codes = explode ( '-' , $ lang ) ; if ( $ codes [ 0 ] == 'i' ) { // Language not listed in ISO 639 that are not variants // of any listed language, which can be registered with the // i-prefix, such as i-cherokee if ( count ( $ codes ) > 1 ) { $ lang = $ codes [ 1 ] ; } } else { for ( $ i = 0 , $ max = count ( $ codes ) ; $ i < $ max ; ++ $ i ) { if ( $ i == 0 ) { $ lang = strtolower ( $ codes [ 0 ] ) ; } else { $ lang .= '_' . strtoupper ( $ codes [ $ i ] ) ; } } } } $ browserLanguages [ ] = $ lang ; } return $ browserLanguages ; }
get browser accept languages.

@param \Symfony\Component\HttpFoundation\Request $request

@return array
get browser accept languages .