A parser for the Accept-Language HTTP header following RFC 2616
use Syonix\Http\Header\AcceptLanguage\AcceptLanguage;
$parsed = AcceptLanguage::parse('da, en-gb;q=0.8, en;q=0.7'); // Returns Array ordered by quality (q)
$parsed = AcceptLanguage::match('de-CH, de-DE;q=0.9, de;q=0.8', ['de-DE', 'de']); // Returns 'de-DE'AcceptLanguage::match()throws a RuntimeException, if none of the accepted languages matches and*is not in theAccept-Languagesstring.- If 
*is accepted and none of the other accepted languages match, the passed$defaultparameter is passed - If 
$defaultis omitted, the first element of the$localearray is returned. - Both 
parseandmatchare case insensitive. parsealways returns the case of the input stringmatchalways returns the case of the provided locale array.- As per the RFC, the quality value defaults to 
q=1.