The bank account library offers helpful classes e.g. for validation, generation and interpretation of IBANs.
First you need to add tenolo/bank-account
to composer.json
:
Let Composer do it for you.
$ composer require tenolo/bank-account
or do it manually
{
"require": {
"tenolo/bank-account": "~1.0"
}
}
Please note that dev-master
latest development version.
Of course you can also use an explicit version number, e.g., 1.0.*
.
Then use it ;)
Mit Hilfe der IBAN-Klasse kann die Länge, der Ländercode und die Prüfsumme einer übergebenen IBAN validiert werden. Desweiteren kann aus einer IBAN die Bankleitzahl und Kontonummer ermittelt werden.
Im aktuellen Stand können IBANs der folgenden Länder interpretiert werden:
Länder | |
---|---|
A | Albanien, Andorra, Angola, Aserbaidschan |
B | Bahrain, Belgien, Bosnien und Herzegowina, Brasilien, Bulgarien |
D | Dänemark, Deutschland, Dominikanische Republik |
E | Estland |
F | Färöer, Finnland, Frankreich1 |
G | Gabun, Georgien, Gibraltar, Griechenland, Grönland, Guatemala |
I | Irland, Israel, Italien |
J | Jordanien |
K | Kasachstan, Katar, Kosovo, Kroatien, Kuwait |
L | Lettland, Libanon, Liechtenstein, Litauen, Luxemburg |
M | Malta, Mauretanien, Mauritius, Mazedonien, Moldau, Monaco, Montenegro |
N | Niederlande, Norwegen |
O | Österreich, Osttimor |
P | Pakistan, Polen, Portugal |
R | Rumänien |
S | San Marino, São Tomé und Príncipe, Saudi-Arabien, Schweden, Schweiz, Serbien, Slowakei, Slowenien, Spanien |
T | Tschechien, Tunesien, Türkei |
U | Ungarn |
V | Vereinigte Arabische Emirate, Vereinigtes Königreich2 |
Z | Zypern |
-
inkl. Französisch-Guayana, Französisch-Polynesien, Französische Süd- und Antarktisgebiete, Guadeloupe, Martinique, Réunion, Mayotte, Neukaledonien, Saint-Barthélemy, Saint-Martin, Saint-Pierre und Miquelon, Wallis und Futuna
-
inkl. Jersey, Guernsey, Isle of Man
<?php
use Tenolo\BankAccount\IBAN;
$iban = new IBAN::create('DE57 3704 0044 0532 0130 00');
// Prüft ob Ländercode, Länge und Prüfsumme der IBAN valide sind.
// Ist die IBAN nicht valide, gibt die getValidationErrors() Funktion
// die entsprechenden Fehlermeldungen als array zurück.
if (!$iban->isValid()) {
foreach($iban->getValidationErrors() as $error) {
echo $error;
}
}
// Gibt die "maschinenlesbare" IBAN zurück.
$iban->getIban(); // "DE57370400440532013000"
// Gibt die formatierte/normalisierte IBAN zurück.
$iban->getIban(true); // "DE57 3704 0044 0532 0130 00"
// Gibt den 2-stelligen Alpha-Ländercode der IBAN zurück.
$iban->getCountryCode(); // "DE"
// Gibt den 4-stelligen numerischen Ländercode der IBAN zurück.
$iban->getNumericCountryCode(); // "1314"
// Gibt die 2-stellige numerische Prüfziffer der IBAN zurück
$iban->getCheckDigits(); // "57"
// Gibt die Bankleitzahl (entsprechend dem Länder-Bankleitzahlenverzeichnis) zurück.
$iban->getBankIdentifier(); // "37040044"
// Gibt die Kunden-Kontonummer (ggf. mit vorangestellten Nullen) zurück.
$iban->getAccountNumber(); // "0532013000"