ion-bazan / nric
提供了一个值对象来存储、生成和验证新加坡NRIC/FIN号码,包括新的M系列FIN号码
v1.0.2
2022-05-20 02:48 UTC
Requires
- php: >= 7.4
- symfony/polyfill-php80: ^1.22
Requires (Dev)
- phpunit/phpunit: ^9.4
README
现在支持2022年新的M系列FIN号码!
本包提供了一个自验证的值对象,用于在PHP中存储、生成和验证新加坡NRIC和FIN号码。
用法
<?php use IonBazan\NRIC\Exception\InvalidChecksumException; use IonBazan\NRIC\Exception\InvalidFormatException; use IonBazan\NRIC\NRIC; $nric = NRIC::generateNric(new DateTime('1990-01-01')); // Generate a random NRIC number $fin = NRIC::generateFin(new DateTime('1990-01-01')); // Generate a random FIN number try { $invalid = NRIC::fromString('S0000001A'); // Create a self-validating (invalid) instance } catch (InvalidChecksumException|InvalidFormatException $e) { var_dump('invalid'); } $valid = NRIC::fromString('S0000001I'); // Create a self-validating instance from valid input var_dump($valid->__toString()); // Thanks to Stringable interface