Güvenlik Kodu Kütüphanesi
"Projects/ dizini altında oluşturulan proje dizinleri çalışan host'un ismi ile isimlendirilirse Settings/Projects.php yapılandırma dosyasına tanımlamaya gerek kalmadan otomatik olarak çağrılması sağlanır."
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.
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);

# 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();