farzai/thai-citizen-id-validation

泰国公民身份证验证

1.2.1 2023-06-17 05:04 UTC

This package is auto-updated.

Last update: 2024-09-08 08:39:55 UTC


README

Latest Version on Packagist Tests codecov Total Downloads

泰国公民身份证验证器是一个易于使用的PHP库,旨在帮助验证泰国国民身份证号码。

安装

您可以通过composer安装此包。

composer require farzai/thai-citizen-id-validation

验证用法

验证泰国公民身份证的示例用法

use Farzai\ThaiIdValidation\Validator;
use Farzai\ThaiIdValidation\Exceptions\InvalidThaiCitizenIdException;

$validator = new Validator();

try {
    $validator->validate('1410100100000');
} catch (InvalidThaiCitizenIdException $e) {
    // Handle invalid citizen id
}

生成用法

有时您可能需要为测试目的生成一个随机的泰国公民身份证。此库可以帮助您实现这一点。

use Farzai\ThaiIdValidation\Generator;

$generator = new Generator();

// Optional
$generator
    ->personType(1) // ประเภทบุคคล
    ->provinceOfBirth('10') // เลขจังหวัดที่เกิด
    ->districtOfBirth('10'); // เลขอำเภอที่เกิด

// Generate
$idCard = $generator->generate();

echo (string)$idCard; // 1410100100000

echo $idCard->getId(); // 1410100100000
echo $idCard->getType(); // 1 digit
echo $idCard->getProvinceOfBirth(); // 2 digit
echo $idCard->getDistrictOfBirth(); // 2 digit
echo $idCard->getVolume(); // 5 digit
echo $idCard->getNumber(); // 2 digit
echo $idCard->getCheckDigit(); // 1 digit

与Laravel一起使用

您可以在Laravel中使用IdCard规则来验证泰国公民身份证。

use Farzai\ThaiIdValidation\Laravel\Rules\IdCard;

$request->validate([
    'id_card' => ['required', new IdCard],
]);

测试

composer test

变更日志

请参阅变更日志了解最近有哪些更改。

贡献

请参阅贡献指南以获取详细信息。

安全漏洞

请查阅我们的安全策略了解如何报告安全漏洞。

鸣谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。