Jenssegers\Agent\Agent::languages PHP Method

languages() public method

Get accept languages.
public languages ( $acceptLanguage = null ) : array
return array
    public function languages($acceptLanguage = null)
    {
        if (!$acceptLanguage) {
            $acceptLanguage = $this->getHttpHeader('HTTP_ACCEPT_LANGUAGE');
        }
        if ($acceptLanguage) {
            $languages = array();
            // Parse accept language string.
            foreach (explode(',', $acceptLanguage) as $piece) {
                $parts = explode(';', $piece);
                $language = strtolower($parts[0]);
                $priority = empty($parts[1]) ? 1.0 : floatval(str_replace('q=', '', $parts[1]));
                $languages[$language] = $priority;
            }
            // Sort languages by priority.
            arsort($languages);
            return array_keys($languages);
        }
        return array();
    }

Usage Example

Example #1
0
 public function getLocale()
 {
     $languages = $this->agent->languages();
     if (!$languages) {
         return null;
     }
     $locales = array_values(array_filter($languages, function ($l) {
         return strlen($l) == 2;
     }));
     return in($locales, 0);
 }
All Usage Examples Of Jenssegers\Agent\Agent::languages