Güvenlik Kodu Kütüphanesi


    × Bunları biliyor muydunuz?
"(ZN >= 5.6) Sürümü itibari ile View:: kütüphanesi parametresiz kullanımda tuttuğu değeri döndürmektedir."


Güvenlik kodu oluşturmak ve üzerinde değişiklik yapabilmek için oluşturulmuştur . Güvenlik Kodu kütüphanesine ait yöntemler aşağıdaki tabloda listelenmiştir.

 

 

# Kurulum


ZN dağıtımları için kurulum gerekmez.

↓ composer require znframework/package-captcha

 

 

# Yapılandırma


Ön tanımlı güvenlik kodu ayarlarını yapmak için aşağıdaki dosyada yer alan captcha bölümünde bulunur.

Dosya: Config/ViewObjects.php
string $type = 'alnum' Güvenlik kodunda hangi tür karakterlerin yer alacağı. 
alnum Alfabetik ve numerik karakterler.
numeric Sadece numerik karakterler.
alpha Sadece alfabetik karakterler.
int $charLength = 6 Kaç karakter uzunlukta olacağı belirtilir.
string $bgColor = '80|80|80' Arkaplan rengini ayarlamak için kullanılır. Renkler R(0-255) | G(0-255) | B(0255) türünde ayarlanır.
array $background = [] Arkaplana resim vermek için kullanılır. Birden fazla resmi diziye sırası ile ekleyebilirsiniz. Bu resimler güvenlik kodunun her yenilenmesinde rastgele olarak değişecektir. Resimlerin yolu kök dizinden başlayacak şekilde belirtilir. Örnegin FILES_DIR.'captcha/1.jpg' gibi.
string $textColor = '255|255|255'
Yazı rengini ayarlamak için kullanılır. Renkler R(0-255) | G(0-255) | B(0255) türünde ayarlanır.
bool $border = false Güvenlik kodu görselinde çerçeve olup olmayacağı belirlenir.
string $borderColor = '0|0|0' Varsa çerçevenin rengini ayarlamak için kullanılır. Renkler R(0-255) | G(0-255) | B(0255) türünde ayarlanır.
int $width = 180 Güvenlik kodu görselinin pixel cinsinden genişlik değeridir.
int $height = 40 Güvenlik kodu görselinin pixel cinsinden yükseklik değeridir.
array $imageString = [] Güvenlik kodundaki metnin boyut ve konum bilgisini belirlemek için kullanılır.
int $size = 5 Metnin boyutu.
int $x = 65 Metnin yataydaki konumu.
int $y = 13 Metnin dikeydeki konumu.
bool $grid = true Güvenlik kodu görselinde ızgara olup olmayacağını belirlemek için kullanılır.
array $gridSpace = [] Izagara arası boşluklarının sayısını ayarlamak için kullanılır.
int $x = 12 Yataydaki ızgara arası boşluk sayısı.
int $y = 12 Dikeydeki ızgara arası boşluk sayısı.
string $gridColor = '50|50|50' Izgaranın rengini ayarlamak için kullanılır. Renkler R(0-255) | G(0-255) | B(0255) türünde ayarlanır.
int $angel = 0 Metne açı vermek için kullanılır. Bu değerin çalışabilmesi içi ttf ayarı ile harici font yüklemesi yapmak gerekmektedir.
array $ttf = [] Harici .ttf uzantılı font yüklemesi yapmak için kullanılır.
 

 

# Yöntemler


Captcha::create(bool $img = false, array $configs = []) : string
Captcha::type(string $type = 'alnum') : this
Captcha::size(int $width, int $height) : this
Captcha::length(int $param) : this
Captcha::borderColor(string $color = NULL) : this
Captcha::bgColor(string $color) : this
Captcha::bgImage(mixed $image) : this
Captcha::textSize(int $size) : this
Captcha::textCoordinate(int $x, int $y) : this
Captcha::textColor(string $color) : this
Captcha::gridColor(string $color = NULL) : this
Captcha::gridSpace(int $x = 0, int $y = 0) : this
Captcha::angle(float $angle) : this
Captcha::ttf(array $ttf) : this
Captcha::getCode(void) : string

 

 

# Create


Güvenlik kodu görselini oluşturmak için kullanılır.

Parametreler

bool $img = false Oluşturulan görsela ait linkin normal mi yoksa <img> etiketi ile dönüp dönmeyeceği.
return string

Örnekler

echo Captcha::create();
echo Captcha::create(true);
https://www.xxx.xxx/Projects/Frontend/Resources/Files/capcha.png

 

 

# Size


Güvenlik kodu görselinin genişlik ve yükseklik değerini ayarlamak için kullanılır.

Parametreler

int $width Genişlik.
int $height Yükseklik.
return this

Örnekler

echo Captcha::size(400, 400)->create(true);

 

 

# Type


Güvenlik kodunun hangi karakter türlerinden oluşacağını belirtmek için kullanılır.

Parametreler

string $type = 'alnum' Güvenlik kodunun hangi karakter türlerinden oluşacağını belirtir.
alnum Alfabetik ve numerik karakterlerden oluşur.
numeric Sadece numerik karakterlerden oluşur.
alpha Sadece alfabetik karakterlerden oluşur.
return this

Örnekler

echo Captcha::type('numeric')->create(true);

 

 

# Length


Güvenlik kodunda yer alan metnin karakter uzunluğunu ayarlamak için kullanılır.

Parametreler

int $length Karakter sayısı.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->create(true);

 

 

# BorderColor


Güvenlik kodu çerçevesinin hangi renk olacağını ayarlamak için kullanılır.

Parametreler

string $color Çerçeve rengi.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('255|0|0')
            ->create(true);

 

 

# BgColor


Güvenlik kodu arkaplanının hangi renk olacağını ayarlamak için kullanılır.

Parametreler

strnig $color Arkaplan rengi
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('255|0|0')
            ->bgColor('255|255|255')
            ->create(true);

 

 

# BgImage


Güvenlik kodu arkaplana resimler eklemek için kullanılır.

Parametreler

mixed $images Arkaplan resimleri.
return this

Örnekler

echo Captcha::bgImage
            ([
                FILES_DIR.'captcha/images/1.jpg',
                FILES_DIR.'captcha/images/2.jpg',
                FILES_DIR.'captcha/images/3.jpg'
            ])
            ->create(true);

 

 

# TextSize


Güvenlik kodu metninin boyutunu ayarlamak için kullanılır.

Parametreler

int $size Metnin boyutu.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('0|0|255')
            ->bgColor('255|255|255')
            ->textSize(3)
            ->create(true);

 

 

# TextCoordinate


Güvenlik kodu metninin x ve y düzlemindeki konumunu ayarlamak için kullanılır.

Parametreler

int $x Yataydaki konumu.
int $y Dikeydeki konumu.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('0|0|255')
            ->bgColor('255|255|255')
            ->textSize(5)
            ->textCoordinate(90,22)
            ->create(true);

 

 

# TextColor


Güvenlik kodu metninin rengini ayarlamak için kullanılır.

Parametreler

string $color Metnin rengi.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('0|0|255')
            ->bgColor('255|255|255')
            ->textSize(5)
            ->textCoordinate(90,22)
            ->textColor('90|210|180')
            ->create(true);

 

 

# GridColor


Güvenlik kodu ızgarasının hangi renk olacağını ayarlamak için kullanılır.

Parametreler

string $color Izgara rengi.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('0|0|255')
            ->bgColor('255|255|255')
            ->textSize(5)
            ->textCoordinate(90,22)
            ->textColor('90|210|180')
            ->gridColor('90|210|180')
            ->create(true);

 

 

# GridSpace


Yatayda ve dikeyde ızgaralar arası boşluk sayısını belirlemek için kullanılır.

Parametreler

int $x Yatayda boşluk sayısı.
int $y Dikeyde boşluk sayısı.
return this

Örnekler

echo Captcha::size(250, 60)
            ->length(8)
            ->borderColor('0|0|255')
            ->bgColor('255|255|255')
            ->textSize(5)
            ->textCoordinate(90,22)
            ->textColor('90|210|180')
            ->gridColor('90|210|180')
            ->gridSpace(6, 2)
            ->create(true);

 

 

# Angle


Güvenlik kodu metnine açı vermek için kullanılır. Bu yöntemin çalışabilmesi için ttf ayarının yapılması veya ttf() yönteminden istifade edilmesi gerekmektedir.

Parametreler

float $angle Açı değeri.
return this

Örnekler

echo Captcha::ttf
([
    FILES_DIR.'captcha/fonts/font1.ttf',
    FILES_DIR.'captcha/fonts/font2.ttf',
    FILES_DIR.'captcha/fonts/font3.ttf'
])
->angle(90)->create(true);

 

 

# TTF


Güvenlik kod metninin font türünü değiştirmek için ttf uzantılı fontlar kullanmak içindir. Birden fazla font kullanılırsa güvenlik kodu görselinin her yenilenmesinden sonra belirtilen fontlardan rastgele font seçilir.

Parametreler

array $fonts .ttf uzantılı fontlar.
return this

Örnekler

echo Captcha::ttf
([
    FILES_DIR.'captcha/fonts/font1.ttf',
    FILES_DIR.'captcha/fonts/font2.ttf',
    FILES_DIR.'captcha/fonts/font3.ttf'
])
->create(true);

 

 

# GetCode


Son güvenlik kodu yenilenmesinden sonra oluşan görselin metinsel karşılığını verir.

Parametreler

return this

Örnekler

echo Captcha::getCode();
b0900124