Memahami Penampilan Tertunda Nilai Kuki dalam $_COOKIE
Apabila cuba mendapatkan nilai kuki serta-merta selepas menggunakan fungsi setcookie() dalam PHP, anda mungkin menghadapi isu di mana $_COOKIE['uname'] kekal tidak ditentukan. Ini berlaku kerana kuki tidak dibuat seketika sehingga respons HTTP dihantar kepada klien.
Sebab kelewatan ini ialah kuki PHP bergantung pada pengepala HTTP Set-Cookie, yang disertakan dalam pengepala respons. Apabila setcookie() dipanggil, ia menambah pengepala Set-Cookie pada respons, tetapi pengepala itu sebenarnya tidak dihantar kepada klien sehingga skrip selesai dilaksanakan.
Walau bagaimanapun, anda boleh mengatasi had ini secara manual menetapkan nilai $_COOKIE['uname'] selepas memanggil setcookie():
setcookie('uname', $uname, time() + 60 * 30); $_COOKIE['uname'] = $uname;
Dengan menetapkan $_COOKIE nilai secara manual, kuki menjadi tersedia untuk digunakan dalam skrip anda serta-merta. Ini membolehkan anda mengakses nilai kuki tanpa perlu bergantung pada permintaan seterusnya daripada pelanggan.
Atas ialah kandungan terperinci Mengapakah Kuki PHP Tidak Tersedia Segera Selepas `setcookie()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!