Cookie (Çerez) Kütüphanesi
Cookie kütüphanesi, çerez yönetimini daha kolay ve güvenli hale getirir.
- Cookie Ayarları
- Cookie Dizinini Belirleme » path()
- Cookie'nin Geçerli Olacağı Alan Adını Belirleme » domain()
- Cookie HTTPS Bağlantısı » secure()
- Cookie Erişim Protokolü » httpOnly()
- Cookie Oluşturma » set()
- Cookie Okuma » get()
- Cookie Kontrolü » has()
- Cookie Silme » delete()
Cookie Ayarları
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ı
],
Cookie Dizinini Belirleme
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');
Cookie'nin Geçerli Olacağı Alan Adını Belirleme
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');
Cookie HTTPS Bağlantısı
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
Cookie Erişim Protokolü
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 Oluşturma
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);
Cookie Okuma
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');
Cookie Kontrolü
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');
Cookie Silme
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');