Negotiate the header's value against a list of supported values in $supported. Negotiation operation is adopted according to the header name, i.e. if the header being negotiated is Accept, then a slash is used as primary type separator, and if the header is Accept-Language respectively, a hyphen is used instead.
The first element of $supported serves as a default if no operand matches.
array&$result# Out parameter recording the negotiation results.