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 ичида бизнинг кукимиз бўлади.
Тавсифланган усулни синаб кўринг.