verify()) { print "ERROR: An invalid IBAN was validated!\n"; $errors++; } print "Hooray! - Invalid IBAN successfully rejected.\n\n"; # Broken IIBAN $broken_iiban = 'AA12011123ZS6'; $myIban = new IBAN($broken_iiban); $suggestions = $myIban->MistranscriptionSuggestions(); if(count($suggestions)) { print "Hooray! Successfully derived '" . implode(',',$suggestions) . "' as likely transcription error source suggestion(s) for the incorrect IBAN $broken_iiban.\n"; } else { print "ERROR: Not able to ascertain suggested transcription error source(s) for $broken_iiban.\n"; } print "\n"; # Get list of countries $countries = $myIban->Countries(); # Loop through the registry's examples, validating foreach($countries as $countrycode) { # instantiate $myCountry = new IBANCountry($countrycode); # start section print "[$countrycode: " . $myCountry->Name() . "]\n"; # output remaining country properties print "Is a SEPA member? "; if($myCountry->IsSEPA()) { print "Yes"; } else { print "No"; } print ".\n"; # get example iban $myIban = new IBAN($myCountry->IBANExample()); # output example iban properties one by one print "Example IBAN: " . $myIban->HumanFormat() . "\n"; print " - country " . $myIban->Country() . "\n"; print " - checksum " . $myIban->Checksum() . "\n"; print " - bban " . $myIban->BBAN() . "\n"; print " - bank " . $myIban->Bank() . "\n"; print " - branch " . $myIban->Branch() . "\n"; print " - account " . $myIban->Account() . "\n"; # output all properties #$parts = $myIban->Parts(); #print_r($parts); # verify print "\nChecking validity... "; if($myIban->Verify()) { print "IBAN $myIban->iban is valid.\n"; } else { print "ERROR: IBAN $myIban->iban is invalid.\n"; $errors++; } print "\n"; } exit($errors); ?>