Güvenlik Kodu Kütüphanesi


    × Bunları biliyor muydunuz?
"Dinamik bir kütüphaneyi tanımlarken sınıf isminin başına Internal ön eki getirirerek statik erişimli hale getirebilirsiniz. "


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 SE ve ZN CE dağıtımları için terminal kurulum komutu.

↓ 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
6.0.0 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.
1.0.0 Int $charLength = 6 Kaç karakter uzunlukta olacağı belirtilir.
1.0.0 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.
1.0.0 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.
1.0.0 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.
1.0.0 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.
1.0.0 Int $width = 180 Güvenlik kodu görselinin pixel cinsinden genişlik değeridir.
1.0.0 Int $height = 40 Güvenlik kodu görselinin pixel cinsinden yükseklik değeridir.
1.0.0 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.
1.0.0 Bool $grid = true Güvenlik kodu görselinde ızgara olup olmayacağını belirlemek için kullanılır.
1.0.0 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ı.
1.0.0 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.
4.0.24 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.
4.0.24 Array $ttf = [] Harici .ttf uzantılı font yüklemesi yapmak için kullanılır.
 

 

# Yöntemler


1.0.0 String create(Bool $img = false, Array $configs = [])
6.0.0 This type(String $type = 'alnum')
1.0.0 This size(Int $width, Int $height)
1.0.0 This length(Int $param)
1.0.0 This borderColor(String $color = NULL)
1.0.0 This bgColor(String $color)
1.0.0 This bgImage(Mixed $image)
1.0.0 This textSize(Int $size)
1.0.0 This textCoordinate(Int $x, Int $y)
1.0.0 This textColor(String $color)
1.0.0 This gridColor(String $color = NULL)
1.0.0 This gridSpace(Int $x = 0, Int $y = 0)
4.0.24 This angle(Float $angle)
4.0.24 This ttf(Array $ttf)
1.0.0 String getCode(Void)

 

 

# Create (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 6.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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

Parametreler

String $color Arkaplan rengi
Return This

Örnekler

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

 

 

# BgImage (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 1.0.0)


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 (ZN >= 4.0.24)


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 (ZN >= 4.0.24)


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 (ZN >= 1.0.0)


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

Parametreler

Void
Return This

Örnekler

echo Captcha::getCode();
b0900124