Ön Bellekleme Kütüphanesi


    × Bunları biliyor muydunuz?
"Devtools projesi ile framework kullanma deneyiminizi daha görsel hale getirebilirsiniz."


Bu kütüphane ön belleğe alma, kullanma, silme gibi işlemleri gerçekleştiren sınıftır. Ön bellekleme kütüphanesi 5 sürücüden oluşur. Bu sürücülerden ön tanımlı olarak file sürücüsü kullanılmaktadır. Diğer sürücüleri kullanılabilmesi için sisteme kurulması gerekmektedir.

 

 

# Kurulum


ZN SE ve ZN CE dağıtımları için terminal kurulum komutu.

↓ composer require znframework/package-cache

 

 

# Yapılandırma


Dosya: Config/Storage.php
Cache
String $driver = 'file' Ön bellekleme işlemi için kullanılacak olan sürücü bilgisi.
Seçenekler file, apc, apcu, memcache, wincache, redis
Array $driverSettings = [] Sürücü türüne göre bağlantı ayarları dizisi.

 

 

# Ön Bellekleme Sürücüleri


File Ön tanımlıdır ve kurulum gerektirmez.
Apc Sisteme kurulum gerektirir. Apc Kılavuz.
Memcache Sisteme kurulum gerektirir. Memcache Kılavuz.
Wincache Sisteme kurulum gerektirir. Wincache Kılavuz.
Redis Sisteme kurulum gerektirir. Redis Kılavuz.

 

 

# Yöntemler


Mixed select(String $key, $compressed = false)
Bool insert(String $key, Mixed $var, Scalar $time = 60, Mixed $compressed = false)
Bool delete(String $key)
Int increment(String $key, Int $increment = 1)
Int decrement(String $key, Int $decrement = 1)
Bool clean()
Array info(Mixed $info)
Array getMetaData(String $key)
This driver(String $driver)
String code(Callable $function, Scalar $time = 60, String $compress = 'gz')
String view(String $file, Scalar $time = 60, String $compress = 'gz')
String file(String $file, Scalar $time = 60, String $compress = 'gz', $type = 'something')

 

 

# Insert (ZN >= 1.0.0)


Ön belleğe nesne almak için kullanılır.

Parametreler

String $key Veri anahtarı.
Mixed $data Veri.
Scalar $time = 60 Kaç saniye tutulacağı. 5.3.37 sürümü itibariyle bu parametreye zaman ifadeleri yazılabilir. Örnek: 1 day, 10 month, 5 year
Mixed $compressed = false Sıkıştırma yapılsın mı?
File Driver bz, gz, lzf, rar, zip, zlib
Other Driver true , false
Return Bool

Kullanımı

Cache::insert('example', 'Example Data', 120);

 

 

# Select (ZN >= 1.0.0)


Ön belleğe alınan veriye ulaşmak için kullanılır. 

Parametreler

String $key Veri anahtarı.
Return Mixed

Kullanımı

echo Cache::select('example');
Example Data

 

 

# Delete (ZN >= 1.0.0)


Ön bellekten nesne silmek için kullanılır.

Parametreler

String $key Veri anahtarı.
Return Bool

Kullanımı

Cache::delete('nesne');

 

 

# Clean (ZN >= 1.0.0)


Tüm ön bellekteki verileri temizlemek için kullanılır.

Parametreler

Void
Return Bool

Kullanımı

Cache::clean();

 

 

# Info (ZN >= 1.0.0)


Tüm ön bellekteki verilerin tutulduğu dosya hakkında veri almak kullanılır.

Parametreler

String $key Veri anahtarı.
Return Array

Kullanımı

Cache::info();
basename   => string 'example' ( length = 9 ),
size       => integer 77 ( length = 2 ),
date       => integer 1472202339 ( length = 10 ),
readable   => boolean true ( length = 4 ),
writable   => boolean true ( length = 4 ),
executable => boolean false ( length = 5 ),
permission => integer 33206 ( length = 5 ),

 

 

# GetMetaData (ZN >= 1.0.0)


Oluşturulan veri hakkında hakkında bilgi almak için.

Parametreler

String $key Veri anahtarı.
Return Array

Kullanımı

Cache::getMetaData('example');
expire => integer 1472203618 ( length = 10 ),
mtime  => integer 1472203498 ( length = 10 ),

 

 

# Driver (ZN >= 2.0.0)


Farklı bir sürücü kullanmak için bu yönteme parametre olarak geçerli ön bellekleme sürücülerinden birinin ismi yazılır.

Parametreler

String $driver Sürücü adı.
Return This

Kullanımı

Cache::driver('apc')->insert('example', 'Example Data'); 
Cache::driver('memcache')->insert('nesne', 'Example Data');

 

 

# Code (ZN >= 5.3.31)


Kod bloklarına ait çıktıları ön belleklemek için kullanılır.

Parametreler

Callable $function Ön belleklenecek kodlar.
Scalar $time = 60 Ön bellekleme süresi.
String $compress = 'gz' Sıkıştırma sürücüsü.
Return String

Kullanımı

$cache = Cache::code(function()
{
    Import::view('contact');
}, '7 day');

echo $cache;

 

 

# View (ZN >= 5.3.31)


Görünüm çıktılarını ön belleklemek için kullanılır.

Parametreler

String $viewName Views/ dizine ait bir dosya adı.
Scalar $time = 60 Ön bellekleme süresi.
String $compress = 'gz' Sıkıştırma sürücüsü.
Return String

Kullanımı

echo Cache::view('contact/main', '2 month');

Data Gönderimi

Data gönderimi için ->data() opsiyonel yönteminden yararlınır.

echo Cache::data(['example' => 'Example Data'])->view('contact/main');

Ön Bellekteki Veriyi Yenileme

Ön bellekteki veriyi yenilemek veya tazelemek için ->refresh() opsiyonel yönteminden yararlınır.

echo Cache::refresh()->data(['example' => 'Example Data'])->view('contact/main');

 

 

# File (ZN >= 5.3.31)


Herhangi bir dosyanın çıktısını ön belleklemek için kullanılır.

Parametreler

String $fileName Dosya adı veya yolu
Scalar $time = 60 Ön bellekleme süresi.
String $compress = 'gz' Sıkıştırma sürücüsü.
Return String

Kullanımı

echo Cache::file(VIEWS_DIR . 'contact/main', '1 day');

Yenileme ve data gönderim işlemleri bu yöntem içinde aynıdır.