همه چیز درباره کوکی‌ها در PHP

php cookies basics
11 آذر 1403


کوکی‌ها یکی از روش‌های ذخیره‌سازی اطلاعات کاربر در مرورگر برای مدت زمان محدود هستند. این تکنیک در وب‌سایت‌ها زیاد استفاده می‌شود تا تجربه کاربری بهتری را فراهم کند. فرض کنید می‌خواهید یک تنظیمات خاص یا ورود کاربر را برای بازدیدهای بعدی حفظ کنید. اینجاست که کوکی‌ها به کار می‌آیند و اطلاعاتی مانند شناسه کاربر یا تنظیمات سفارشی را ذخیره می‌کنند.



کوکی‌ها در سمت کلاینت ذخیره می‌شوند و می‌توانند به طور خودکار با هر درخواستی به سرور ارسال شوند. استفاده از کوکی مزایایی چون حفظ تنظیمات کاربر و بهبود تجربه کاربری دارد، اما از طرفی ممکن است به دلایل امنیتی توجه زیادی به مکانیزم آن شود. نکته جالب اینکه کوکی‌ها می‌توانند زمان‌expire مشخصی داشته باشند و بعد از آن حذف شوند.



در زبان PHP، می‌توانید به‌راحتی با استفاده از تابع setcookie() یک کوکی را تنظیم کنید. این تابع چندین آرگومان اختیاری دارد که به شما اجازه می‌دهد نام، مقدار، مدت زمان انقضا و دیگر ویژگی‌های کوکی را مشخص کنید.



به طور خلاصه، کوکی‌ها ابزار قدرتمندی برای مدیریت اطلاعات کاربر در سمت کلاینت به شمار می‌روند. آنها می‌توانند تجربه کاربران را شخصی‌سازی کرده و امکانات بیشتری را برای وب‌سایت‌ها فراهم کنند. با این حال، مهم است که به جوانب امنیتی و حریم خصوصی آنها توجه شود. در ادامه، نحوه استفاده از کوکی‌ها و برخی از مزایا و مشکلات آنها را با مثال‌های عملی بررسی خواهیم کرد.




<?php
// تنظیم یک کوکی
setcookie("user", "Ali", time() + (86400 * 30), "/"); // 86400 = 1 روز

// خواندن کوکی
if(isset($_COOKIE["user"])) {
echo "کاربر: " . $_COOKIE["user"];
} else {
echo "کوکی تنظیم نشده است!";
}
?>


setcookie("user", "Ali", time() + (86400 * 30), "/"); - این خط یک کوکی با نام user و مقدار Ali تنظیم می‌کند که به مدت ۳۰ روز معتبر است و در مسیر ریشه (ریشه مستندات سایت) قابل دسترسی است.

if(isset($_COOKIE["user"])) { - این خط بررسی می‌کند که آیا کوکی با نام user تنظیم شده است یا خیر.

echo "کاربر: " . $_COOKIE["user"]; - این خط مقدار کوکی با نام user را چاپ می‌کند.

} else { - این شرط به وضعیت عدم وجود کوکی پاسخ می‌دهد.

echo "کوکی تنظیم نشده است!"; - این خط پیام وضعیت عدم وجود کوکی را چاپ می‌کند.

سوالات متداول

؟

کوکی‌ها در PHP چه کاربردی دارند؟

؟

چطور کوکی‌ای را در PHP تنظیم کنم؟

؟

چطور می‌توانم مقدار یک کوکی را در PHP بخوانم؟

؟

آیا کوکی‌ها امن هستند؟