KKUT Docs

Oturum Kütüphanesi

PHP session işlemlerini daha pratik, kullanışlı ve güvenli halete getiren sınıftır. # Kurulum Bu bileşen KUT ile birlikte gelir; ayrıca kurulum gerektirmez. ↓ Paket KUT ile birlikte gelir. # …

This article is currently available in Turkish. Its English translation is being prepared.

PHP session işlemlerini daha pratik, kullanışlı ve güvenli halete getiren sınıftır.

Kurulum

Bu bileşen KUT ile birlikte gelir; ayrıca kurulum gerektirmez.

↓ Paket KUT ile birlikte gelir.

Yöntemler

Session::insert(string $name, $value) : bool
Session::first() : this
Session::last() : this
Session::select(string $name) : mixed
Session::selectAll() : array
Session::delete(string $name) : bool
Session::deleteAll() : bool
Session::encode(string $name, string $value) : this
Session::decode(string $hash) : this
Session::regenerate(bool $regenerate = [[true]]) : this

Yapılandırma

Dosya: Config/Storage.php
string $encode = 'super' Oturum anahtarlarının hangi algoritma ile şifreleneceğidir. Belirtilmezse şifreleme yapılmaz.
Seçenekler super, golden, md5, sha1 ...
bool $regenerate = true Oturum kimliğinin değiştirilmesi durumu. Güvenlik açışıdaın bu değerin true olması tercih edilir.

INI Yapılandırması

Session yani oturum işlemlerinin htaccess veya php_ini ayarlarını yapılandırmak için oluşturulmuş yapılandırma dosyasıdır.

File: Settings/Ini.php
INI
array $settings = [] php.ini Oturum ayarları listesi. Bu ayarların kullanımı hakkında detaylı bilgiye {{PHP Ini Yönergeleri}} bağlantısı üzerinden ulaşabilirsiniz.
File: Settings/Htaccess.php
Htaccess
bool $status = false Settings bölümündeki ayarların .htaccess dosyasına kaydedilip kaydedilmeyeceğini belirler. TRUE olması durumda ayarlar .htaccess dosyasına kaydedilir. FALSE olması durumuda sadece php_ini üzerinden yapılandırmaya çalışır.

Insert

Oturum verisi oluşturmak için kullanılır.

Parametreler

string $name Oturum adı.
mixed $value Değer.
return bool

Opsiyonel Yöntemler

first() : this Bir oturum dizisinin başına eleman ekler. Session::insert() işleminin bu yöntemle birlikte yapılması durumunda session verisi dizi türünde saklanır.
last() : this Bir oturum dizisinin sonuna eleman ekler. Session::insert() işleminin bu yöntemle birlikte yapılması durumunda session verisi dizi türünde saklanır.

Kullanımı

Session::insert('example', 'Example Data');
echo Session::select('example');
Example Data
Doğrudan Erişim
Session::example('Example Data');

Select

Oluşturulan oturumları seçmek için kullanılır.

Parametreler

string $name Oturum adı.
return mixed

Kullanımı

Session::insert('example', ['a', 'b', 'c']);
output(Session::select('example'));
0 => string 'a' ( length = 3 ),
1 => string 'b' ( length = 3 ),
2 => string 'c' ( length = 3 )
 
Doğrudan Erişim
output(Session::example());

SelectAll

Oluşturulan tüm oturumları seçmek için kullanılır.

Parametreler

void
return array

Kullanımı

Session::insert('example', 'Example Data');
Session::insert('value', 'Value');
output(Session::selectAll());
1a79a4d60de6718e8e5b326e338ae533 => string 'Example Data' ( length = 14 ),
2063c1608d6e0baf80249c42e2be5804 => string 'Value' ( length = 7 )
Doğrudan Erişim
output(Session::all());

Delete

Olutuşturulan oturumları silmek için kullanılır.

Parametreler

string $name Oturum adı.
return bool

Kullanımı

Session::delete('example');
output(Session::selectAll());
2063c1608d6e0baf80249c42e2be5804 => string 'Value' ( length = 7 )
Doğrudan Erişim
Session::exampleDelete();

DeleteAll

Olutuşturulan tüm oturumları silmek için kullanılır.

Parametreler

void
return bool

Kullanımı

Session::deleteAll();
output(Session::selectAll());
array (size=0) empty

Encode

Oturum oluştururken hem değeri tutacak anahtarı hemde değerin kendsini şifrelemek için kullanabilirsiniz. Burada dikkat edilmesi gereken nokta anahtar şifrelemesi çözümlenebilirken değerin şifrelemesi çözümlenememektedir. Ön tanımlı olarak Config/Services.php -> session ayarları içinde ön tanımlı olarak anahtarın şifrelenmesi için kullanılan encode ayarı md5 olarak ayarlıdır.

Parametreler

string $encodeName Oturum değerini tutacak anahtarın şifrelenmesi için kullanılır. Boş bırakılması halinde hiç bir şifreleme yapmaz.
string $encodeValue Oturum verisini şifrelemek için kullanılır. Boş bırakılması halinde hiç bir şifreleme yapmaz.
return this

Kullanımı

Session::encode('md5')->insert('sessionValue', 'Session Value');
Session::encode('sha1')->insert('sessionValue', 'Session Value');

\Output::writeLine(Session::decode('md5')->select('sessionValue'));
\Output::writeLine(Session::decode('sha1')->select('sessionValue'));
Session Value
Session Value 

Decode

Session::encode() ile şifrelenmiş oturum adını çözer. Şifreleme değer için tek yönlü olarak yapıldığı için çözümlenemez.

Parametreler

string $encodeName Oturum değerini tutacak anahtarın şifrelenmesi için kullanılır. Boş bırakılması halinde hiç bir şifreleme yapmaz.
return this

Kullanımı

Session::encode('md5')->insert('sessionValue', 'Session Value');

\Output::writeLine(Session::decode('md5')->select('sessionValue'));
Session Value 

İstenirse oturumun değeride şifrelenebilir. Ancak bu kullanımda verinin çözümlenmesi mümkün değildir.

Session::encode('md5', 'sha1')->insert('sessionValue', 'Session Value');

\Output::writeLine(Session::decode('md5')->select('sessionValue'));
ed3f3e737cd0b4e396b1350e119a665b156e133a

Regenerate

Geçerli oturum kimliğini yenisiyle değiştirir. Ancak bu yöntem Session kütüphanesi için otomatik olarak kullanıldığından tekrar kullanımına gerek yoktur. Regenerate işleminin otomatik olarak yapılmamasını sağlamak için Config/Services.php -> session -> regenerate ayarının true değeri false olarak ayarlanmalıdır.

Parametreler

string $regenerate Oturum kimliği değiştirilsin mi?
return this

Kullanımı

Session::insert('example', 'Example Data');
Session::regenerate();
KUT Framework 1.0Katmanlı Uygulama Tabanı

Kur. Uyarla. Türet.