lochinvarwest/sa-id-validation

南非身份证号码的简单验证器;

0.1.0 2020-08-11 15:58 UTC

This package is auto-updated.

Last update: 2024-09-12 18:26:39 UTC


README

安装

  • 在项目根目录下运行以下命令
    composer require lochinvarwest/sa-id-validation
    

实例化和使用

要实例化,可以使用以下任意一种方法

$validator = SAIdValidator::create($id_number);

$validator = new SAIdValidator($id_number);

或者使用请求规则验证器

'idno' => ['required', new SAIdNumber()]

可用方法

验证

validate() 方法检查数字的位数,检查身份证号码是否表示有效的出生日期,以及Luhn算法校验位是否正确。成功时返回'true',失败时返回错误信息。

$validator->validate(); // or as above

检查字符串长度

validateLength() 方法检查身份证号码是否有13位数字

$validator->validateLength();

检查出生日期数字

validateDateOfBirth() 方法检查身份证号码是否代表有效的出生日期。

$validator->validateDateOfBirth();

获取出生日期

getDateOfBirth() 方法返回一个Carbon日期对象,表示在提供的身份证号码中指明的出生日期。

$validator->getDateOfBirth();

检查校验位

validateChecksum() 方法检查提供的身份证号码的Luhn算法校验位是否正确。

$validator->validateChecksum();

检查性别

validateGender($gender) 方法检查提供的性别是否与身份证号码中指明的性别相对应。参数为"Female"或"Male"或"F"或"M"(不区分大小写)

$validator->validateGender($gender);

获取性别

getGender() 方法返回身份证号码中指明的性别。

$validator->getGender();

检查公民身份

validateCitizen($citizenship) 方法检查身份证号码中指明的国籍或居住地是否与提供的状态相对应。参数为"citizen"或"resident"(不区分大小写)

$validator->validateCitizen();

获取公民身份

getCitizen() 方法返回身份证号码中指明的国籍状态。

$validator->getCitizen();