PHP Dersleri

PHP ile IBAN Doğrulama Kodu

PHP ile IBAN adresinin doğru olup olmadığını kontrol ediyoruz.

PHP ile IBAN doğrulama kodu oluşturmak için birkaç adımı izlemeniz gerekebilir. İlk olarak, IBAN’ın doğru uzunlukta olduğunu kontrol etmeniz gerekir. Ardından, IBAN’ın geçerli bir ülke kodu içerip içermediğini kontrol etmeniz gerekir. Son olarak, IBAN’ın doğrulama kodunu hesaplamanız ve geri döndürmeniz gerekir.

Bu kontrolleri sağlayarak sonuç alabileceğimiz php kodlarını yazalım. Bu kontrol işlemlerini bir fonksiyon üzerinden gerçekleştireceğiz. Hazırlamış olduğumuz fonksiyon bize true yada false olarak sonuç verecektir.

function validateIBAN($iban) {
    // IBAN uzunluğu kontrolü
    if(strlen($iban) < 4) {
        return false;
    }
    
    // Geçerli ülke kodu kontrolü
    $countryCode = substr($iban, 0, 2);
    $countryList = array(
        'AD','AT','BE','BG','CH','CY','CZ','DE','DK','EE',
        'ES','FI','FR','GB','GI','GR','HR','HU','IE','IL',
        'IS','IT','KW','KZ','LB','LI','LT','LU','LV','MC',
        'MD','ME','MK','MR','MT','MU','NL','NO','PL','PT',
        'RO','RS','SA','SE','SI','SK','SM','TN','TR','VG');
    if(!in_array($countryCode, $countryList)) {
        return false;
    }
    
    // IBAN doğrulama kodu hesaplama
    $iban = str_replace(' ', '', $iban);
    $iban = substr($iban, 4) . substr($iban, 0, 4);
    $iban = str_replace(
        array('A','B','C','D','E','F','G','H','I','J','K','L','M',
            'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'),
        array('10','11','12','13','14','15','16','17','18','19','20','21',
            '22','23','24','25','26','27','28','29','30','31','32','33',
            '34','35','36'),
        $iban);
    $remainder = intval(substr($iban, 0, 1));
    for($i = 1; $i < strlen($iban); $i++) {
        $value = intval(substr($iban, $i, 1));
        $remainder = ($remainder * 10 + $value) % 97;
    }
    return ($remainder == 1);
}

Bu fonksiyon, verilen IBAN’ın doğruluğunu kontrol eder ve doğruysa true, aksi takdirde false döndürür. Fonksiyonun kullanımı şu şekildedir:

$iban = 'TR33 0006 1005 1978 6457 8413 26';
if(validateIBAN($iban)) {
    echo 'IBAN doğru';
} else {
    echo 'IBAN yanlış';
}

Bu örnekte, Türkiye’deki bir bankanın IBAN’ı doğruysa “IBAN doğru” yazdırılır. Bu kullanımla birlikte, yazılan IBAN adresinin doğru olup olmadığı kontrol edilecektir. Yukarıdaki işlemde yapılan kontrol yapısını dilediğiniz gibi sisteminize uyarlayabilirsiniz. Bu sonuçla birlikte, PHP iban kontrolünü sağlamış oluyoruz.

İlgili Makaleler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir