19
validatesiren
validate_siren
SYNOPSIS
validate_siren($siren)
DESCRIPTION
CODE
- function validate_siren($siren) {
- return preg_match('/^\d{9}$/', $siren) and checksum_siren($siren);
- }
validate_siret
SYNOPSIS
validate_siret($siret, $siren=false)
DESCRIPTION
CODE
- function validate_siret($siret, $siren=false) {
- return preg_match('/^\d{14}$/', $siret) and checksum_siren($siret) and (!$siren or strncmp($siren, $siret, strlen($siren)) == 0);
- }
validate_kbis
SYNOPSIS
validate_kbis($kbis, $siren=false)
DESCRIPTION
CODE
- function validate_kbis($kbis, $siren=false) {
- return preg_match('/(^\d{9})\s+/', $kbis, $r) and validate_siren($r[1], $siren);
- }
checksum_num
SYNOPSIS
checksum_siren($num)
DESCRIPTION
CODE
- function checksum_siren($num) {
- $len=strlen($num);
- if (!($len == 9 or $len == 14)) {
- return false;
- }
- $sum=0;
- for ($i=0; $i < $len; $i++) {
- if ($i%2==0) {
- $sum += $num[$i];
- }
- else {
- $n=2*$num[$i];
- $sum += $n > 9 ? 1 + ($n - 10) : $n;
- }
- }
- return ($sum % 10) == 0;
- }
Comments