Cake\Localized\Validation\EsValidation::dni PHP Method

dni() public static method

Only checks the DNI type personId.
public static dni ( string $check ) : boolean
$check string The value to check.
return boolean Success.
    public static function dni($check)
    {
        if (!preg_match('/^([0-9]+)([A-Z]{1})$/', $check, $matches)) {
            return false;
        }
        array_shift($matches);
        list($num, $letter) = $matches;
        return $letter === static::$CODES[$num % 23];
    }

Usage Example

Ejemplo n.º 1
0
 /**
  * Test the dni validation.
  *
  * @return void
  */
 public function testDni()
 {
     $this->assertTrue(EsValidation::dni('32050031Z'));
     $this->assertTrue(EsValidation::dni('03654968S'));
     $this->assertTrue(EsValidation::dni('00000014Z'));
     $this->assertTrue(EsValidation::dni('14Z'));
     $this->assertFalse(EsValidation::dni('145'));
     $this->assertFalse(EsValidation::dni('21856874H'));
 }