Cookie (Çerez) Kütüphanesi

Cookie kütüphanesi, çerez yönetimini daha kolay ve güvenli hale getirir.

  1. Cookie Ayarları
  2. Cookie Dizinini Belirleme » path()
  3. Cookie'nin Geçerli Olacağı Alan Adını Belirleme » domain()
  4. Cookie HTTPS Bağlantısı » secure()
  5. Cookie Erişim Protokolü » httpOnly()
  6. Cookie Oluşturma » set()
  7. Cookie Okuma » get()
  8. Cookie Kontrolü » has()
  9. Cookie Silme » delete()

Cookie 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 cookie anahtarına tanımlı değerler, cookie kütüphanesine aittir.

//--- [*] App/Config/App.php ---//
'cookie'		=> [
	'encryption_key'	=> 'HXg1wuVjAOxR7AZZz4rGMbfVwN8nTY20', // Cookie şifreleme anahtarı
	'cookie_security'	=> true, // Cookie güvenliği
	'http_only'			=> true, // Cookie erişim protokolü
	'secure'			=> false, // Cookie HTTPS bağlantısı
	'seperator'			=> '--', // Cookie güvenliği için veri ayracı
	'path'				=> '/', // Cookie kayıt dizini
	'domain'			=> '', // Cookie alan adı
],

Tanımlanacak cookielerin tutulacağı dizini belirlemek için path() methodu kullanılır. Belirlenen dizin yolunu parametre olarak alır. Default değeri root dizin (/) olarak ayarlanmıştır.

Parametre Veri Tipi Açıklama
$path String Cookie kayıt dizini
Cookie::path('/App/Storage/Cookie');

Tanımlanacak cookielerin geçerli olacağı alan adını belirlemek için domain() methodu kullanılır. Belirlenen alan adını parametre olarak alır.

Parametre Veri Tipi Açıklama
$domain String Cookie'lerin geçerli olacağı alan adı
Cookie::domain('alanadi.com');

Tanımlanacak cookielerin https bağlantısı kullanmasını sağlamak için secure() methodu kullanılır. Default tanımı false olarak ayarlanmıştır.

Parametre Veri Tipi Açıklama
$secure Boolean Cookie HTTPS bağlantısı
Cookie::secure(true); // HTTPS bağlantısı aktif ediliyor

Tanımlanacak cookielerin yalnızca http protokolü üzerinden erişilebilmesini sağlamak için httpOnly() methodu kullanılır. Default tanımı true olarak ayarlanmıştır.

Parametre Veri Tipi Açıklama
$http_only Boolean Yalnızca HTTP protokolüne izin verme
Cookie::httpOnly(true); // Yalnızca HTTP protokolüne izin veriliyor

Cookie verisi oluşturmak için set() methodu kullanılır. Oluşturulacak cookie adı, cookie verisi ve cookie süresi olmak üzere üç adet parametre alır.

Parametre Veri Tipi Açıklama
$key String Cookie adı
$value String Cookie değeri
$time Integer Saklama süresi

// Oluşturulan cookie, default değer olan 1 hafta saklanır
Cookie::set('key', 'value');

// Oluşturulan cookie, 1 saat saklanır
Cookie::set('key', 'value', 3600);

Oluşturulan cookie verilerini okumak için get() methodu kullanılır. Okunacak cookie verisinin adını parametre olarak alır.

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

Belirtilen isimde cookie verisi olup olmadığını kontrol etmek için has() methodu kullanılır. Kontrol edilecek cookie verisinin adını parametre olarak alır. Eğer cookie var ise true, yok ise false döndürür.

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

Belirtilen isimde cookie verisini silmek için delete() methodu kullanılır. Silinecek olan cookie verisinin adını parametre olarak alır.

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