Мгновена инсталация на бисквитки в PHP
За да може инсталираната бисквитка веднага
да се появи в масива $_COOKIE може
да се използва хитрия метод.
Същността на метода е следната: първо инсталираме
бисквитката с помощта на setcookie, след това
ръчно я записваме в масива $_COOKIE:
<?php
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
var_dump($_COOKIE['str']); // веднага ще изведе 'eee'
?>
За да не се изпраща бисквитката всеки път към браузъра, може записването на бисквитката да се направи вътре в условие. Ако няма такава бисквитка, тогава я записваме:
<?php
if (!isset($_COOKIE['str'])) { // ако няма бисквитка
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
}
echo $_COOKIE['str']; // ще изведе 'eee'
?>
Нека обсъдим как работи това. При първото
посещение на страницата ще попаднем в if,
ще инсталираме бисквитката в браузъра и веднага ще я запишем
в $_COOKIE. След това чрез echo
ще се изведе ръчно записаната от нас стойност.
При следващи посещения на страницата няма да попаднем
в if, но в $_COOKIE ще се съдържа
нашата бисквитка, вече дошла от браузъра.
По този начин, както при първото посещение, така и при
следващите в $_COOKIE ще се намира
нашата бисквитка.
Изпробвайте описания метод.