protected static function _parseAcceptWithQualifier($header)
{
$accept = array();
$header = explode(',', $header);
foreach (array_filter($header) as $value) {
$prefValue = '1.0';
$value = trim($value);
$semiPos = strpos($value, ';');
if ($semiPos !== false) {
$params = explode(';', $value);
$value = trim($params[0]);
foreach ($params as $param) {
$qPos = strpos($param, 'q=');
if ($qPos !== false) {
$prefValue = substr($param, $qPos + 2);
}
}
}
if (!isset($accept[$prefValue])) {
$accept[$prefValue] = array();
}
if ($prefValue) {
$accept[$prefValue][] = $value;
}
}
krsort($accept);
return $accept;
}