IsoCodes\Uknin::validate PHP Method

validate() public static method

UK's National Insurance Number validator Also known as NINO.
See also: http://www.hmrc.gov.uk/manuals/nimmanual/nim39110.htm
See also: http://stackoverflow.com/a/17929051/490589
Author: ronan.guilloux regexp must check "/^[A-CEGHJ-NOPR-TW-Z]{1}[A-CEGHJ-NPR-TW-Z]{1}[0-9]{6}[A-D\s]{1}/i"; regexp must NOT check "/(^GB)|(^BG)|(^NK)|(^KN)|(^TN)|(^NT)|(^ZZ).+/i";
public static validate ( string $uknin ) : boolean
$uknin string
return boolean
    public static function validate($uknin)
    {
        $regexpMustCheck = "/^(?!BG|GB|NK|KN|TN|NT|ZZ)[ABCEGHJ-PRSTW-Z][ABCEGHJ-NPRSTW-Z]\\d{6}[A-D]\$/";
        return (bool) preg_match($regexpMustCheck, $uknin);
    }

Usage Example

Example #1
0
 /**
  * testInvalidUknin
  *
  * @param mixed $uknin
  *
  * @dataProvider getInvalidUknin
  *
  * return void
  */
 public function testInvalidUknin($uknin)
 {
     $this->assertFalse(Uknin::validate($uknin));
 }