Après la fonction php qui permet de valider un IBAN en voici une autre qui permet de valider un rib.
Le RIB est une chaine de 23 caractères composée dans l'ordre de :
- Code banque, 5 chiffres
- Code guichet, 5 chiffres
- Numéro de compte, 11 chiffres ou lettres
- Clé RIB, 2 chiffres compris entre 01 et 97
Pour plus d'informations sur le format du RIB : RIB sur Wikipedia.
La fonction isValidRib retourne un booléen qui vaut faux si le RIB est invalide et vrai si le RIB est valide. La vérification du rib se fait dans un premier temps en vérifiant la longueur de la chaine.
Dans un second temps, la clé rib fournie est comparée à sa valeur théorique. Cette valeur théorique est calculée en fonction du code banque, du code guichet et du numéro de compte.
Vérifier un RIB
function isValidRib($rib)
{
if(mb_strlen($rib) !== 23)
{
return false;
}
$key = substr($rib,-2);
$bank = substr($rib,0,5);
$bank = substr($rib,0,5);
$branch = substr($rib,5,5);
$account = substr($rib,10,11);
$account = strtr($account,
'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'12345678912345678923456789');
return 97 - bcmod(89*$bank + 15 * $branch + 3 * $account,97) === (int)$key;
}
Image : Mervyn Chua