src/ParseQualityHeaders.php
public function parseRawLineOfHeaderAcceptLanguage(?string $headers) : ?array
    {
        $r = null;

        if ($headers !== null && $headers !== "") {
            return $this->parseArrayOfHeaderAcceptLanguage(array_map("trim", explode(",", $headers)));
        }

        return $r;
    }
public function parseRawLineOfHeaderAcceptLanguage(?string $headers) : ?array
    {
        $r = null;

        if ($headers !== null && $headers !== "") {
            return $this->parseArrayOfHeaderAcceptLanguage(array_map("trim", explode(",", $headers)));
        }

        return $r;
    }
Trata o valor bruto de um header "AcceptLanguage" e retorna um array.

Retornará um array associativo contendo 2 chaves, "locales" e "languages" sendo
cada uma um array trazendo aquela informação em ordem de prioridade.

Os valores serão retornados todos em lowercase.

<pre>
$headers = "pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3";

$return = [
// string[]   "locales"       Coleção de locales aceitos.
// string[]   "languages"     Coleção de linguagens aceitas.
"locales" => ["pt-br", "en-us"],
"languages" => ["pt", "en"],
];
</pre>

@param       ?string $headers
Versão bruta do header.

@return      ?array