تابع ( ) setcookie ، یک کوکی را به وسیله یک دستور HTTP به مرورگر کاربر ( client ) ارسال می کند . همانطور که می دانید کوکی یک متغیر است که برای نگهداری اطلاعات کاربر بر روی کامپیوتر وی استفاده می شود . هر بار که کاربر ، با همان مرورگر صفحه یا سایت مورد بحث را باز کند ، مقدار این کوکی فراخوانی شده و به صفحه ارجاع می شود . برای مثال رمز عبور یا نام کاربری در یک سایت از جمله کوکی های پر استفاده است.
حتما بخوانید: مرجع توابع کار با پوشه ها در PHP
برای دریافت اطلاعات بیشتر راجع به کوکی ها و نحوه تعریف و استفاده از آنها ، به بخش تعریف و استفاده از کوکی ها در PHP بروید . نام کوکی به صورت اتوماتیک به متغیری به همان نام در صفحه اختصاص می یابد . برای مثال اگر کوکی به نام ” user ” در صفحه ایجاد شود ، در هنگام اجرای صفحه متغیری به نام ” user ” ساخته شده و با مقدار کوکی ، مقدار دهی خواهد شد. برای استفاده موثر از یک کوکی ، بایستی مقدار آن قبل از ایجاد صفحه ، به صفحه ارسال شود . بنابراین می توان از تابع ( ) setcookie که یک دستور HTTP است ، برای این کار استفاده نمود .
شکل کلی استفاده از این تابع به صورت زیر است :
syntax | setcookie( name , value , expire , path , domain ,secure ) ; |
syntax توضیح هر یک از موارد | |
توضیح | پارامتر |
پارامتر name تعیین کننده نام کوکی است . از این نام برای بازیابی و فراخوانی کوکی در سطح برنامه استفاده می شود . | name |
پارامتر value مقدار کوکی را تعیین می کند .این مقدار بر روی کامپیوتر ذخیره می شود . | value |
پارامتر expire تعیین کننده مدت زمان اعتبار کوکی ، بر حسب ثانیه است . پس از اتمام این مدت زمان ، کوکی از بین خواهد رفت . برای تعیین مدت زمان اعتبار کوکی ، معمولا از تابع ( ) time استفاده می شود . |
expire |
پارامتر domain ، دامنه ای که کوکی بر روی آن قابل دسترس است را تعیین می کند . برای مثال اگر مقدار آن ‘www.DeveloperStudio.ir’ تنظیم شود ، فقط در این دامنه قابل دسترسی است . تعیین این پارامتر اختیاری است . |
domain |
این پارامتر تعیین میکند که آیا کوکی فقط بایستی از طریق یک پروتکل امن HTTPS منتقل شود با خیر . مقدار پیش فرض این خاصیت FALSE بوده و تعیین آن نیز اختیاری است . |
secure |
حتما بخوانید: مرجع توابع کار با HTTP در PHP
نکته : برای خواندن مقدار یک کوکی از تابع ( نام کوکی ) COOKIE_$ استفاده می شود .
مثال های عملی :
در مثال های زیر ، به صورت عملی نحوه استفاده از تابع ( ) setcookie را آموزش داده ایم .
مثال 1 : در مثال اول ، نحوه تعریف یک کوکی را به صورت ساده نشان داده ایم :
مثال 1 | < ? php $value = “my cookie value”; |
// تعریف و ارسال یک کوکی ساده
setcookie(“TestCookie”,$value);
? >
<html>
<body>
…
مثال 2 : تعریف یک کوکی که پس از یک روز از بین می رود :
مثال 2 | < ? php $value = “my cookie value”; |
// تعریف و ارسال یک کوکی ساده با اعتبار 24 ساعت
setcookie(“TestCookie”,$value, time()+3600*24);
? >
<html>
<body>
…
مثال 3 : در مثال زیر مقدار کوکی که قبلا ایجاد کرده ایم را به روش های مختلفی در خروجی نمایش داده ایم :
مثال 3 | < ? php // چاپ مقدار کوکی در خروجی echo $_COOKIE[“TestCookie”]; echo “<br />”; echo $HTTP_COOKIE_VARS[“TestCookie”]; echo “<br />”; |
// چاپ تمام کوکی های صفحه
print_r($_COOKIE);
? >
<html>
<body>
…خروجیmy cookie value
my cookie value
Array ([TestCookie] => my cookie value)
با دریافت « مشاوره برنامهنویسی، وب و سئو » از کارشناسان جوان حرفهای و باتجربه ساکوراد؛ موفقیت کسب و کار، رونق فروش و افزایش درآمد خود را تضمین کنید!
و اما کلام آخر…
تابع ( ) setcookie ابزاری قدرتمند برای مدیریت دادههای کاربر در PHP است. با استفاده از این تابع، میتوانید اطلاعات مهمی را ذخیره کرده و تجربه کاربری بهتری را فراهم کنید.