Yii - कुकीज़
कुकीज़ क्लाइंट साइड पर संग्रहीत सादे पाठ फ़ाइलें हैं। आप उन्हें ट्रैकिंग उद्देश्य के लिए उपयोग कर सकते हैं।
रिटर्निंग यूजर की पहचान के लिए तीन चरण हैं -
सर्वर क्लाइंट (ब्राउज़र) को कुकीज़ का एक सेट भेजता है। उदाहरण के लिए, आईडी या टोकन।
ब्राउज़र इसे संग्रहीत करता है।
अगली बार जब कोई ब्राउज़र वेब सर्वर को एक अनुरोध भेजता है, तो यह उन कुकीज़ को भी भेजता है, ताकि सर्वर उपयोगकर्ता की पहचान करने के लिए उस जानकारी का उपयोग कर सके।
कुकीज़ आमतौर पर HTTP हेडर में सेट की जाती हैं जैसा कि निम्नलिखित कोड में दिखाया गया है।
HTTP/1.1 200 OK
Date: Fri, 05 Feb 2015 21:03:38 GMT
Server: Apache/1.3.9 (UNIX) PHP/4.0b3
Set-Cookie: name = myname; expires = Monday, 06-Feb-16 22:03:38 GMT;
path = /; domain = tutorialspoint.com
Connection: close
Content-Type: text/html
PHP प्रदान करता है setcookie() कुकीज़ सेट करने के लिए कार्य -
setcookie(name, value, expire, path, domain, security);
कहाँ -
name - कुकी का नाम सेट करता है और इसे HTTP_COOKIE_VARS नामक एक पर्यावरण चर में संग्रहीत किया जाता है।
value - नामित चर का मान सेट करता है।
expiry - 1 जनवरी 1970 को 00:00:00 GMT के बाद से सेकंड में भविष्य का समय निर्दिष्ट करता है। इस समय के बाद कुकी दुर्गम हो जाएगी।
path - निर्देशिका को निर्दिष्ट करता है जिसके लिए कुकी मान्य है।
domain- इसका उपयोग बहुत बड़े डोमेन में डोमेन नाम को परिभाषित करने के लिए किया जा सकता है। सभी कुकीज़ केवल होस्ट और डोमेन के लिए मान्य हैं जिन्होंने उन्हें बनाया है।
security - यदि सेट किया जाता है, तो इसका मतलब है कि कुकी केवल HTTPS द्वारा भेजी जानी चाहिए, अन्यथा, जब 0 पर सेट किया जाता है, तो कुकी को नियमित HTTP द्वारा भेजा जा सकता है।
PHP में कुकीज़ तक पहुँचने के लिए, आप का उपयोग कर सकते हैं $_COOKIE or $HTTP_COOKIE_VARS चर।
<?php
echo $_COOKIE["token"]. "<br />"; /* is equivalent to */ echo $HTTP_COOKIE_VARS["token"]. "<br />";
echo $_COOKIE["id"] . "<br />"; /* is equivalent to */ echo $HTTP_COOKIE_VARS["id"] . "<br />";
?>
कुकी को हटाने के लिए, आपको कुकी को उस तिथि के साथ सेट करना चाहिए जो पहले ही समाप्त हो चुकी है।
<?php
setcookie( "token", "", time()- 60, "/","", 0);
setcookie( "id", "", time()- 60, "/","", 0);
?>