note 77959 deleted from function.http-negotiate-content-type by sobak
| From: | sobak@php.net | Date: | Sun, 04 Dec 2016 07:21:28 +0000 |
| Subject: | note 77959 deleted from function.http-negotiate-content-type by sobak | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-208055@lists.php.net to get a copy of this message | ||
Note Submitter: Vasil Rangelov
----
Newer versions of this extension fix the bug from the previous note.
Still, if you want to ensure there's no match, you can use the array, as the array will remain
empty.
I used this fact in the following technique to ensure good content negotiation between
application/xhtml+xml and text/html, since IE sends only "*/*" and thus receives
application/xhtml+xml if you use the current sample from the documentation.
<?php
$bestContentType = http_negotiate_content_type(array('application/xhtml+xml',
'text/html'),
$contentTypes);
$contentType = (empty($contentTypes) ? 'text/html' : $bestContentType);
http_send_content_type($contentType);
?>
Note that at the time of writing, Opera accepts text/html with this approach, because it places
application/xhtml+xml with a lower qualifier.