Session (Oturum) Kütüphanesi

Session (oturum) kütüphanesi, PHP oturum işlemlerini daha pratik, kolay ve güvenli hale getirir.

  1. Session Ayarlarını Yapılandırma
  2. Session Verisi Tanımlama » set()
  3. Session Verisi Okuma » get()
  4. Session Verisi Kontrolü » has()
  5. Session Verisi Silme » delete()
  6. Session Sonlandırma » destroy()
  7. Flash Mesaj Oluşturma » setFlash()
  8. Flash Mesaj Okuma » getFlash()
  9. Flash Mesaj Kontrolü » hasFlash()

Session Ayarlarını Yapılandırma

Session kütüphanesi ile ilgili ayarlar, /App/Config dizini içerisindeki App.php dosyasında bulunur. Dosya içerisinde return edilen dizi değişkendeki session anahtarına tanımlı değerler, session kütüphanesine aittir.

//--- [*] App/Config/App.php ---//
'session'	=> [
	'encryption_key'	=> 'u2LMq1h4oUV0ohL9svqedoB5LebiIE4z', // session şifreleme anahtarı
	'cookie_httponly'	=> true,
	'use_only_cookies'	=> true,
	'lifetime'			=> 3600, // session süresi
],

Session Verisi Tanımlama

Session verisi tanımlamak için set() methodu kullanılır. Oluşturulacak session adı ve session verisi parametre olarak verilir.

Parametre Veri Tipi Açıklama
$key String Session adı
$value Mixed Session değeri
Session::set('key', 'value');

Toplu olarak session verisi tanımlamak için, session verileri bir array'e atanıp set() methoduna parametre olarak verilir.

Session::set(['user_id' => 1, 'username' => 'johndoe']);

Session Verisi Okuma

Tanımlanan session verilerini okumak için get() methodu kullanılır. Okunacak session verisinin adı parametre olarak verilir. Eğer parametre verilmezse, tüm session verisini array tipinde döndürür.

Parametre Veri Tipi Açıklama
$key String Session adı
// 'key' anahtarına tanımlı session verisini döndürür
Session::get('key');

// Tüm session verisini döndürür
Session::get();

Session Verisi Kontrolü

Belirtilen isimde session verisi olup olmadığını kontrol etmek için has() methodu kullanılır. Kontrol edilecek session verisinin adı parametre olarak verilir.

Parametre Veri Tipi Açıklama
$key String Session adı
if (Session::has('key'))
	// session tanımlı

Session Verisi Silme

Belirtilen isimle tanımlı session verisini silmek için delete() methodu kullanılır. Silinecek olan session verisinin adı parametre olarak verilir.

Parametre Veri Tipi Açıklama
$key String Session adı
Session::delete('key');

Session Sonlandırma

Tüm session verilerini silip oturumu sonlandırmak için destroy() methodu kullanılır.

Session::destroy();

Flash Mesaj Oluşturma

Flash mesajlar sessionda tutulan ve bir sonraki http isteğinde otomatik olarak silinen verilerdir. Bir flash mesaj oluşturmak için setFlash() methodu kullanılır. Mesaj içeriği ve yönlendirme adresi parametre olarak verilir.

Parametre Veri Tipi Açıklama
$message String Mesaj içeriği
$url String Yönlenecek url ( Default: null )
// Örnek kullanım
Session::setFlash('Bu bir flash mesajdır');

// Flash mesaj oluşturulduktan sonra belirtilen adrese yönlendirilir.
Session::setFlash('Bu bir flash mesajdır', 'http://ornek.com');

Flash Mesaj Okuma

Oluşturulan flash mesajları okumak için getFlash() methodu kullanılır.

Session::getFlash();

Flash Mesaj Kontrolü

Oluşturulmuş bir flash mesaj olup olmadığını kontrol etmek için hasFlash() methodu kullanılır.

if (Session::hasFlash())
	// flash mesaj var