2012-06-26 17 views
5

प्रतिक्रिया कक्षा में ज़ेंड फ्रेमवर्क में हेडर स्टोर करने के लिए दो अलग-अलग सरणी हैं: _headers[] और _headersRaw[]"कच्चे HTTP शीर्षलेख" क्या है? "HTTP शीर्षलेख" और "कच्चे HTTP शीर्षलेख" के बीच क्या अंतर है?

setHeader(), getHeaders(), clearHeader() और

setRawHeader(), getRawHeaders(), clearRawHeaders(): और वहाँ हर एक की स्थापना के लिए उचित तरीके हैं।

"हेडर" और "कच्चा हेडर" रखने का क्या कारण है? क्या इन शीर्षकों में से प्रत्येक के लिए अभ्यास में कुछ विशेष प्रकार का उपयोग है?

+1

क्या इस बारे में उपयोगकर्ता मार्गदर्शिका में कोई जानकारी नहीं है? (आम तौर पर मैं बस मैनुअल पढ़ता हूं, लेकिन ज़ेंड मैनुअल का मेरा अनुभव यह है कि यह व्यापक से बहुत दूर है)। – GordonM

उत्तर

2

setHeader का उपयोग कर आप वहाँ setRawHeader() के रूप में यह उचित formating

0

मैं के साथ है आप पूरे/पूर्ण हेडर डाल के मामले में जैसे

$this->getResponse()->setHeader('Content-type','json'); 

स्वरूपण, जबकि के बारे में चिंता किए बिना चाबी घाटी जोड़ी सेट थोड़ा देर हो चुकी है ...

कच्चे का अर्थ है कि हेडर यूआरएल-एन्कोडेड नहीं है, जबकि यदि "कच्चा" शब्द छोड़ा गया है, तो हेडर एन्कोड किया गया है। उदाहरण के लिए:

$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- एनकोडेड है के रूप में

% 3 ए % 2F % 3F % 3 डी

क्रमशः।

संबंधित मुद्दे