Neomerx\JsonApi\Http\Headers\AcceptMediaType::parseQualityAndParameters PHP Method

parseQualityAndParameters() private static method

private static parseQualityAndParameters ( array $fields ) : array
$fields array
return array
    private static function parseQualityAndParameters(array $fields)
    {
        $quality = 1;
        $qParamFound = false;
        $parameters = null;
        $extensions = null;
        $count = count($fields);
        for ($idx = 1; $idx < $count; ++$idx) {
            if (empty($fields[$idx]) === true) {
                continue;
            }
            if (strpos($fields[$idx], '=') === false) {
                throw new InvalidArgumentException('mediaType');
            }
            list($key, $value) = explode('=', $fields[$idx], 2);
            $key = trim($key);
            $value = trim($value, ' "');
            // 'q' param separates media parameters from extension parameters
            if ($key === 'q' && $qParamFound === false) {
                $quality = (double) $value;
                $qParamFound = true;
                continue;
            }
            $qParamFound === false ? $parameters[$key] = $value : ($extensions[$key] = $value);
        }
        return [$parameters, $quality, $extensions];
    }