ParseQualityHeaders

trait AeonDigital\Http\Traits\ParseQualityHeaders
Fornece métodos relacionados a verificação qualitativa dos headers que utilizam indicativos
de qualificação.

Methods

public AeonDigital\Http\Traits\ParseQualityHeaders::parseArrayOfQualityHeaders($headers)
Trata os valores de headers marcados com parametros quality que identificam a
preferência de algum tipo de conteúdo ou comportamento sobre outro.
Retorna um array ordenado dos dados encontrados em ordem de preferência.
Valores em igual nível de preferência serão retornados alfabeticamente.

``` php
$headers = [
"text/html",
"application/xhtml+xml",
"application/xml;q=0.9",
"* /*;q=0.8"
];

$return = [
// string "value" Valor real.
// float "quality" Nível da "qualidade" atribuido.
["value" => "text/html", "quality" => 1],
["value" => "application/xhtml+xml", "quality" => 1],
["value" => "application/xml", "quality" => 0.9],
["value" => "* /*", "quality" => 0.8]
];
```
Parameters:
  • ‹ ?array › $headers
    Valores do header em formato de array.
Returns:

‹ ?array ›
O objeto de retorno é um array de arrays associativos conforme exemplificado acima.

public AeonDigital\Http\Traits\ParseQualityHeaders::parseRawLineOfQualityHeaders($headers)
Trata os valores brutos de headers marcados com parametros quality que identificam a
preferência de algum tipo de conteúdo ou comportamento sobre outro.
Retorna um array ordenado dos dados encontrados em ordem de preferência.
Valores em igual nível de preferência serão retornados alfabeticamente.

``` php
$headers = "text/html,application/xhtml+xml,application/xml;q=0.9,* /*;q=0.8";

$return = [
// string "value" Valor real.
// float "quality" Nível da "qualidade" atribuido.
["value" => "text/html", "quality" => 1],
["value" => "application/xhtml+xml", "quality" => 1],
["value" => "application/xml", "quality" => 0.9],
["value" => "* /*", "quality" => 0.8]
];
```
Parameters:
  • ‹ ?string › $headers
    Versão bruta do header.
Returns:

‹ ?array ›
O objeto de retorno é um array de arrays associativos conforme exemplificado acima.

public AeonDigital\Http\Traits\ParseQualityHeaders::parseArrayOfHeaderAcceptLanguage($headers)
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.

``` php
$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"],
];
```
Parameters:
  • ‹ ?array › $headers
    Valores do header em formato de array.
Returns:

‹ ?array ›

public AeonDigital\Http\Traits\ParseQualityHeaders::parseRawLineOfHeaderAcceptLanguage($headers)
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.

``` php
$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"],
];
```
Parameters:
  • ‹ ?string › $headers
    Versão bruta do header.
Returns:

‹ ?array ›