ملفات تعريف الارتباط PHP
ما هو ملف تعريف الارتباط؟
غالبًا ما يستخدم ملف تعريف الارتباط لتحديد هوية المستخدم. ملف تعريف الارتباط هو ملف صغير يقوم الخادم بتضمينه على كمبيوتر المستخدم. في كل مرة يطلب فيها نفس الكمبيوتر صفحة بها متصفح ، سيرسل ملف تعريف الارتباط أيضًا. باستخدام PHP ، يمكنك إنشاء واسترداد قيم ملفات تعريف الارتباط.
إنشاء ملفات تعريف الارتباط باستخدام PHP
يتم إنشاء ملف تعريف الارتباط مع setcookie()
الوظيفة.
بناء الجملة
setcookie(name, value, expire, path, domain, secure, httponly);
مطلوب معلمة الاسم فقط . جميع المعلمات الأخرى اختيارية.
PHP إنشاء / استرداد ملف تعريف الارتباط
يقوم المثال التالي بإنشاء ملف تعريف ارتباط باسم "المستخدم" بقيمة "John Doe". تنتهي صلاحية ملف تعريف الارتباط بعد 30 يومًا (86400 * 30). يعني "/" أن ملف تعريف الارتباط متاح في موقع الويب بالكامل (بخلاف ذلك ، حدد الدليل الذي تفضله).
ثم نسترد قيمة ملف تعريف الارتباط "المستخدم" (باستخدام المتغير العام $ _COOKIE). نستخدم أيضًا isset()
الوظيفة لمعرفة ما إذا تم تعيين ملف تعريف الارتباط:
مثال
<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
ملاحظة: يجب أن تظهرsetcookie()
الوظيفة قبل علامة <html>.
ملاحظة: قيمة ملف تعريف الارتباط يتم تشفيرها تلقائيًا عند إرسال ملف تعريف الارتباط ، ويتم فك تشفيرها تلقائيًا عند استلامها (لمنع تشفير عنوان URL ، استخدم setrawcookie()
بدلاً من ذلك).
تعديل قيمة ملف تعريف الارتباط
لتعديل ملف تعريف الارتباط ، ما عليك سوى تعيين (مرة أخرى) ملف تعريف الارتباط باستخدام setcookie()
الوظيفة:
مثال
<?php
$cookie_name = "user";
$cookie_value = "Alex Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
احذف ملف تعريف الارتباط
لحذف ملف تعريف الارتباط ، استخدم setcookie()
الوظيفة مع تاريخ انتهاء صلاحية في الماضي:
مثال
<?php
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>
<?php
echo "Cookie 'user' is deleted.";
?>
</body>
</html>
تحقق مما إذا تم تمكين ملفات تعريف الارتباط
يقوم المثال التالي بإنشاء برنامج نصي صغير يتحقق من تمكين ملفات تعريف الارتباط. أولاً ، حاول إنشاء ملف تعريف ارتباط تجريبي باستخدام setcookie()
الوظيفة ، ثم عد متغير مصفوفة $ _COOKIE:
مثال
<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>
<?php
if(count($_COOKIE) > 0) {
echo "Cookies are enabled.";
} else {
echo "Cookies are disabled.";
}
?>
</body>
</html>
مرجع شبكة PHP الكامل
للحصول على مرجع كامل لوظائف الشبكة ، انتقل إلى مرجع شبكة PHP الكامل .