В Zend Framework в классе ответов существуют два разных массива для хранения заголовков: _headers[]
и _headersRaw[]
. И есть соответствующие методы для настройки каждого из них:
setHeader(), getHeaders(), clearHeader()
и
setRawHeader(), getRawHeaders(), clearRawHeaders()
.
В чем причина наличия «заголовка» и «исходного заголовка»? Есть ли какой-то особый вид использования на практике для каждого из этих заголовков?
используя setHeader, вы устанавливаете пару ключей vale, не беспокоясь о форматировании, например
$this->getResponse()->setHeader('Content-type','json');
в то время как в случае setRawHeader () вы помещаете весь / полный заголовок, как и при правильном формировании
Я немного опаздываю здесь …
Исходное означает, что заголовок не кодируется URL-адресом, а если слово «raw» опущено, заголовок закодирован. Например:
$header = 'http://www.mywebsite.com?q=string'; // this is raw, no encoding echo $header; // no encoding so output is -> http://www.mywebsite.com?q=mystring echo rawurlencode($header); // URL-encoded so output is -> http%3A%2F%2Fwww.mywebsite.com%3Fq%3Dstring
Специальные символы: /? = были закодированы в URL как
% 3A% 2F% 3F% 3D
соответственно.