PHP: Membongkar Misteri Disfungsi session_destroy()
Menghadapi kesukaran dalam memusnahkan pembolehubah sesi walaupun menggunakan session_destroy() boleh membingungkan. Artikel ini menyelidiki sebab session_destroy() mungkin gagal dan meneroka kaedah alternatif untuk menamatkan sesi PHP.
Mengapa session_destroy() tidak Berfungsi?
Yang utama penyebab di sebalik ketidakfungsian session_destroy() ialah ketiadaan permulaan sesi. Untuk session_destroy() untuk dilaksanakan dengan jayanya, sesi mesti telah dimulakan sebelum ini menggunakan session_start(). Kegagalan untuk memulakan sesi sebelum cuba memusnahkannya akan mengakibatkan ralat.
Kaedah Alternatif untuk Pemusnahan Sesi
Selain session_destroy(), terdapat mekanisme alternatif tersedia untuk menamatkan sesi dalam PHP:
Contoh Penggunaan:
Untuk menunjukkan penggunaan pengendalian sesi yang betul bersama-sama dengan session_destroy(), pertimbangkan coretan kod berikut:
session_start(); if (isset($_SESSION['LAST_ACTIVITY']) & (time() - $_SESSION['LAST_ACTIVITY'] > 1800)) { session_destroy(); }
Dengan menggunakan session_start() secara eksplisit, kami memastikan sesi dimulakan sebelum cuba memusnahkannya. Pendekatan ini menjamin bahawa sesi itu berjaya dibatalkan.
Atas ialah kandungan terperinci Mengapa PHP saya session_destroy() Tidak Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!