在Zend Framework的Response类中,有两个不同的数组用于存储头:_headers[]
和_headersRaw[]
。并且有适当的方法来设置每一个:
setHeader(), getHeaders(), clearHeader()
和
setRawHeader(), getRawHeaders(), clearRawHeaders()
。
有"header“和"raw header”的原因是什么?在实践中,这些头文件有没有特殊的用法?
发布于 2012-06-26 20:26:25
使用setHeader设置密钥值对,而不用担心格式问题,例如
$this->getResponse()->setHeader('Content-type','json');
而在使用setRawHeader()的情况下,您可以使用适当的格式将整个/完整标头放入原样
发布于 2015-09-03 05:43:27
我来晚了..。
Raw表示标头不是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
分别使用。
https://stackoverflow.com/questions/11207070
复制相似问题