PHP setrawcookie() Function












❮ مرجع شبکه PHP



مثال


مثال زیر یک کوکی با PHP ایجاد می کند. کوکی "کاربر" نام دارد
و مقدار "جان دو" خواهد بود. مقدار کوکی URL نخواهد بود
کدگذاری شده است. کوکی پس از 30 روز منقضی می شود (86400 * 30).
استفاده از "/" به این معنی است که کوکی در کل وب سایت موجود است (در غیر این صورت، دایرکتوری مورد نظر خود را انتخاب کنید):




$cookie_name = "user";
$cookie_value = "جان";

setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
// 86400 = 1 روز
?>

< body>

echo "Cookie is set.";

?>



?>

این را خودتان امتحان کنید »




تعریف و استفاده


تابع setrawcookie() یک کوکی (بدون رمزگذاری URL) را برای ارسال به همراه بقیه هدرهای HTTP تعریف می کند.


از کوکی اغلب برای شناسایی کاربر استفاده می شود. کوکی یک فایل کوچک است که
سرور بر روی کامپیوتر کاربر تعبیه می شود. هر بار که همان کامپیوتر الف را درخواست می کند
صفحه با مرورگر، کوکی را نیز ارسال می کند. با PHP، هم می توانید مقادیر کوکی را ایجاد و هم بازیابی کنید.


نام کوکی به طور خودکار به یک متغیر از آن اختصاص داده می شود
نام. به عنوان مثال، اگر یک کوکی با نام "user" ارسال شده باشد، یک متغیر است
به طور خودکار به نام $user ایجاد می شود که حاوی مقدار کوکی است.


توجه: تابع setrawcookie() باید قبل از برچسب.


توجه: برای رمزگذاری خودکار URL مقدار کوکی هنگام ارسال، و رمزگشایی خودکار هنگام دریافت، استفاده کنید
در عوض تابع setcookie().



نحو



setrawcookie(نام، مقدار، انقضا، مسیر، دامنه، امن);

مقادیر پارامتر









را مشخص می کند



را مشخص می کند

















پارامتر توضیح
نام لازم است. نام کوکی
مقدار اختیاری. مقدار کوکی
انقضا اختیاری. زمان منقضی شدن کوکی را مشخص می کند. مقدار: time()+86400*30، کوکی را در 30 روز منقضی می کند. اگر این پارامتر تنظیم نشود، کوکی در پایان جلسه (هنگامی که مرورگر بسته می شود) منقضی می شود
مسیر اختیاری. مسیر سرور کوکی را مشخص می کند.
اگر روی "/" تنظیم شود، کوکی در کل دامنه در دسترس خواهد بود. اگر روی "/php/" تنظیم شود، کوکی فقط در دایرکتوری php و همه زیرشاخه های php در دسترس خواهد بود. مقدار پیش‌فرض دایرکتوری فعلی است که کوکی در آن تنظیم می‌شود
دامنه اختیاری. نام دامنه کوکی را مشخص می کند. برای در دسترس قرار دادن کوکی در همه زیر دامنه های example.com، دامنه را روی ".example.com" تنظیم کنید. تنظیم آن به www.example.com باعث می شود کوکی فقط در زیر دامنه www در دسترس باشد
ایمن اختیاری. مشخص می کند که آیا کوکی فقط باید از طریق یک اتصال امن HTTPS منتقل شود یا خیر. TRUE نشان می دهد که کوکی تنها در صورتی تنظیم می شود که یک اتصال امن وجود داشته باشد. پیش فرض FALSE است.












جزئیات فنی











مقدار بازگشتی: در مورد موفقیت درست است. FALSE در صورت شکست
نسخه PHP: 5+




نمونه های بیشتر



مثال


مقدار کوکی با نام "user" را بازیابی کنید (با استفاده از متغیر سراسری
$_COOKIE). همچنین از تابع isset() برای اطلاع از وجود کوکی استفاده کنید:






$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    «کوکی با نام «» را بازتاب می دهد. $cookie_name . "' وجود ندارد!";
} else {
    echo "Cookie is named: " . $cookie_name . "
مقدار این است: " . $_COOKIE[$cookie_name];

?>




خودت امتحانش کن »



مثال


برای اصلاح یک کوکی، کافی است (دوباره) کوکی را با استفاده از تابع setrawcookie() تنظیم کنید:



$cookie_name = "user";
$cookie_value = "Alex";

setrawcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>



< ;?php
$cookie_name = "user";
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' وجود ندارد!";
} else {
    echo "Cookie is named: " . $cookie_name . "
مقدار این است: " . $_COOKIE[$cookie_name];

?>




خودت امتحانش کن »



مثال


برای حذف یک کوکی، از تابع setrawcookie() با تاریخ انقضا در گذشته استفاده کنید:



$cookie_name = "user";

unset($_COOKIE[$cookie_name]);
// مقدار خالی و انقضا یک ساعت قبل از
$res = setrawcookie($cookie_name, '', time() - 3600);
?>< br>


echo "کاربر کوکی حذف شده است.";
?>

< ;/body>

این را خودتان امتحان کنید »



مثال


یک اسکریپت کوچک ایجاد کنید که بررسی کند کوکی ها فعال هستند یا خیر. ابتدا سعی کنید یک کوکی آزمایشی با تابع setrawcookie() ایجاد کنید، سپس متغیر آرایه $_COOKIE را بشمارید:



setrawcookie("test_cookie", "test", time() + 3600, '/');
?>




if(count($_COOKIE) > 0) {
    echo "کوکی‌ها فعال هستند";
} else {
    echo "کوکی‌ها غیرفعال هستند"؛
}
؟>




این را خودتان امتحان کنید »



❮ مرجع شبکه PHP