Я отвечу ужасным, нарисованным рукой комиком. Второе изображение является причиной того, что result
является undefined
в вашем примере кода.
Имена заголовков не чувствительны к регистру.
Из RFC 2616 - «Протокол передачи гипертекста - HTTP / 1.1» , Раздел 4.2, «Заголовки сообщений» :
Каждое поле заголовка состоит из имени, за которым следует двоеточие (":") и значение поля. Имена полей нечувствительны к регистру.
blockquote>Обновление RFC 7230 не содержит никаких изменений из RFC 2616 в этой части.
Согласно RFC 7230 (HTTP / 1.1):
Каждое поле заголовка состоит из имени поля, нечувствительного к регистру, за которым следует двоеточие («:»), необязательный ведущий пробел, значение поля и необязательные конечные пробелы.
blockquote>https://tools.ietf.org/html/rfc7230#section-3.2
Кроме того, RFC 7540 (HTTP / 2):
Так же, как и в HTTP / 1.x, имена полей заголовка представляют собой строки символов ASCII, которые сравниваются нечувствительным к регистру образом.
blockquote>
Имена заголовков HTTP нечувствительны к регистру, согласно RFC 2616 :
4.2:
Каждое поле заголовка состоит из имени, которое следует за ним двоеточие (":") и значение поля. Имена полей нечувствительны к регистру.
blockquote>(Значения поля могут быть или не быть чувствительны к регистру.)
Если вы доверяете основному
Кстати, в отличие от большинства HTTP, методы (глаголы) являются чувствительными к регистру:
5.1.1 Метод
Маркер метода указывает способ, который должен выполняться на ресурсе, идентифицированном Request-URI. Метод чувствителен к регистру.
blockquote>Method = "OPTIONS" ; Section 9.2 | "GET" ; Section 9.3 | "HEAD" ; Section 9.4 | "POST" ; Section 9.5 | "PUT" ; Section 9.6 | "DELETE" ; Section 9.7 | "TRACE" ; Section 9.8 | "CONNECT" ; Section 9.9 | extension-method extension-method = token
RFC для HTTP (как указано выше) диктует, что заголовки не чувствительны к регистру, однако вы обнаружите, что с определенными браузерами (я смотрю на вас, IE), что капитализация каждого из слов имеет тенденцию быть лучшим:
Location: http://stackoverflow.com
Content-Type: text/plain
vs
location: http://stackoverflow.com
content-type: text/plain
Это не стандарт «HTTP», а только один из особенностей браузера, о которых мы как разработчики должны думать.
header('Content-type: image/png')
не работал с PHP 5.5, обслуживающим IE11, так как в потоке изображения был показан текст
header('Content-Type: image/png')
, как на изображении, появившемся как изображение
Единственным отличием является капитал «T».