परिचय
सुपरग्लोबल $_COOKIE HTTP रिक्वेस्ट के रूप में कुकीज़ के साथ वर्तमान स्क्रिप्ट को पास किए गए वेरिएबल संग्रहीत करता है। $HTTP_COOKIE_VARS में भी वही जानकारी होती है, लेकिन यह सुपरग्लोबल नहीं है, और अब डिप्रिकेटेड हो चुका है।
कुकी क्या है?
कुकीज़ सर्वर द्वारा क्लाइंट कंप्यूटर पर संग्रहीत टेक्स्ट फ़ाइलें हैं और ट्रैकिंग उद्देश्य के लिए रखी जाती हैं। PHP पारदर्शी रूप से HTTP कुकीज़ का समर्थन करता है। कुकीज़ आमतौर पर HTTP हेडर में सेट की जाती हैं। JavaScript भी ब्राउज़र पर सीधे कुकी सेट कर सकता है।
सर्वर स्क्रिप्ट ब्राउज़र को कुकीज़ का एक सेट भेजती है। यह भविष्य के उपयोग के लिए स्थानीय मशीन पर इस जानकारी को संग्रहीत करता है। जब अगली बार ब्राउज़र वेब सर्वर को कोई रिक्वेस्ट भेजता है, तो यह उस कुकी जानकारी को सर्वर को भेजता है और सर्वर उस जानकारी का उपयोग उपयोगकर्ता की पहचान करने के लिए करता है।
PHP में setcookie फ़ंक्शन है जो HTTP रिस्पांस के साथ क्लाइंट को भेजे जाने वाले कुकी ऑब्जेक्ट को बनाने के लिए है।
setcookie
सिंटैक्स
setcookie(name, value, expire, path, domain, security);
पैरामीटर्स
- Name - संग्रहीत कुकी का नाम।
- Value - यह नामित वेरिएबल का मान सेट करता है।
- Expiry - यह 1 जनवरी 1970 को 00:00:00 GMT से सेकंड में भविष्य का समय निर्दिष्ट करता है।
- Path - डायरेक्टरी जिनके लिए कुकी मान्य है।
- Domain - बहुत बड़े डोमेन में डोमेन नाम निर्दिष्ट करता है।
- Security - HTTPS के लिए 1। डिफ़ॉल्ट 0 नियमित HTTP के लिए।
कुकी उदाहरण
<?php
if (isset($_COOKIE['username'])) {
echo "<h2>Cookie name is already set with value: " . $_COOKIE['username'] . "</h2>";
} else {
setcookie("username", "Anil");
echo "<h2>Cookie is now set </h2>";
}
?>
क्लाइंट की बाद की विजिट पर कुकी प्राप्त करने के लिए:
उदाहरण
<?php
$arr = $_COOKIE;
foreach ($arr as $key => $val) {
echo "<h2>$key=>$val </h2>";
}
?>
आउटपुट
username=>Anil
कुकी हटाने के लिए, पहले से समाप्त हो चुकी तारीख के साथ कुकी सेट करें:
setcookie("username", "", time() - 3600);
महत्वपूर्ण: setcookie() को किसी भी आउटपुट से पहले कॉल किया जाना चाहिए (हेडर भेजे जाने से पहले)।