Ik heb al meerdere functies geprobeerd, zoals: explode(), substr(), str_split() en meer van dit soort functies maar ik krijg niet het resultaat wat ik wens.
Ik heb een NL btwnummer op geslagen in de database. Deze staat er als volgt in: NL123456789B08
Ik wil dit gegeven uit de database halen en vervolgens opsplitsen.
Ik wil namelijk een bewerking uitvoeren op de reeks van 9 cijfers (dus tussen NL en B) en ik wil een bewerking kunnen uitvoeren op de 2 cijfers die na de letter B komen.
Wil dus vanuit de string $getbtwnumber = "NL123456789B08" het volgende resultaat krijgen:
$getbtwa = "123456789";
$getbtwb = "08";
?
Onbekende gebruiker
27-10-2014 15:33
gewijzigd op 27-10-2014 15:41
Je kan met regex de tekens tussen de NL en B eruit vissen.
Helaas weet ik niet wat de regex code is.
@Randy: op deze pagina ben ik ook geweest en heb ook de substr() functie geprobeerd, maar daar wordt het volgens mij niet erg netjes van... Kun je me laten zien hoe jij het stukje script hebt opgebouwd om alleen de twee gewenste reeksen over te houden?
Het BTW-nummer is inmiddels redelijk Europese-eenheidsworst-opgebouwd:
Landcode, 2 hoofdletters, ISO-code.
Burger-service-nummer van oprichter, 9 cijfers (oftewel: je sofi-nummer)
De letter B, van BTW
Twee cijfers, opeenlopende nummering van bedrijven bijbehorend bij je BSN.
Dus mijn bedrijf is:
NL 181300539 B 01
Wat dus ook kan:<?php
function ontcijfer_btw_nummer($string)
{
$gegevens[] = substr($string, 0, 2);
$gegevens[] = substr($string, 2, 9);
$gegevens[] = substr($string, 12, 2);
return $gegevens;
}
list($landcode, $bsn_nummer, $bedrijfsid) = ontcijfer_btw_nummer('NL181300539B01');
echo "In $landcode is meneer #$bsn_nummer begonnen aan bedrijf #$bedrijfsid.";
?>
Niet dat het korter, sneller of makkelijker is, maar ik wilde wel iets PHP toevoegen aan de opbouw van een BTW-nummer.
@Eddy:
niet zo met je bsn strooien. Niet voor niets wordt altijd gewaarschuwd om niet overal je ID te laten kopieren: en als je dat doet, je bsn af te dekken.
Met een regex zou het kunnen, maar aangezien de opbouw altijd gelijk is, is het gebruik van substr() sneller.
[size=xsmall]Toevoeging op 28/10/2014 09:34:14:[/size]
Het heeft trouwens niet zo veel zin om NL uit de string te vissen: de btw-nummers hebben per land een andere opbouw.