Php’de Zaman Ayarlı Session’lar

Her zaman olmasada bazen zamanı gelince session’ların otomatik sonlanmasını isteriz.. Ama her session için değil, bazı özel durumlar için olabilir.. Bu gibi durumlara basit bir çözüm bulabiliriz.. İşte o basit çözümün kodları;

<?php
 
 session_start();

 /* eğer vaktiGeldi session'ı yok ise sessionları oluştur */
 if ( !isset($_SESSION['vaktiGeldi']) ){
   $_SESSION['vaktiGeldi'] = time() + 20;
   $_SESSION['kullanici_adi'] = 'Tayfun Erbilen';
 }

 /* session zamanı geçmiş ise belirli session'ları yok et */
 if ( time() > $_SESSION['vaktiGeldi'] ){
   unset($_SESSION['kullanici_adi']);
   // ya da session_destroy()
 }

 echo 'Hoşgeldin, <strong>'.$_SESSION['kullanici_adi'].'</strong>';

?>

Şimdi burada yapılan şey şu.. Session oluştururken bir tane zamanın belirtileceği session oluşturulacak.. time() + 20 dememin açıklaması Mevcut zamandan 20 saniye sonrası demek oluyor.. Ve kontrol ederkende mevcut zaman eğer vakit session’ından büyük ise istediğimiz sessionları sonlandırıyoruz..

Ki budurumda 20 saniye sonra kullanici_adi adlı session‘ım kullanılamaz hale gelecektir.. Bu şekilde zaman ayarlı session’lar oluşturup gerektiğinde kullanabilirsiniz..

Bir Cevap Yazın