Download the PHP package chaoswey/taiwan-id-validator without Composer
On this page you can find all versions of the php package chaoswey/taiwan-id-validator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download chaoswey/taiwan-id-validator
More information about chaoswey/taiwan-id-validator
Files in chaoswey/taiwan-id-validator
Download chaoswey/taiwan-id-validator
More information about chaoswey/taiwan-id-validator
Files in chaoswey/taiwan-id-validator
Vendor chaoswey
Package taiwan-id-validator
Short Description 台灣身分證、統一編號驗證
License MIT
Homepage https://github.com/chaoswey/taiwan-id-validator
Package taiwan-id-validator
Short Description 台灣身分證、統一編號驗證
License MIT
Homepage https://github.com/chaoswey/taiwan-id-validator
Please rate this library. Is it a good library?
Informations about the package taiwan-id-validator
Taiwan ID Validator
一組 PHP / Laravel 共用的驗證工具,支援台灣營利事業統一編號、國民身分證、新舊式外來人口統一證號與常見證號格式。2025 版以策略模式重構,可依需求替換或擴充驗證器,同時保留舊有 API 以利升級。
特色
isBan:營利事業統一編號,新版預設(2023.04 後)並可選擇套用舊規則。isIdCardNumber:統一處理國民身分證、新/舊式外來人口統一證號,提供細緻的開關與族群限制。isMobileBarcode、isDonationCode、isCitizenDigitalCertificate、isCreditCardNumberValid等常用格式驗證。- Laravel Service Provider 內建驗證規則(含新舊命名),可直接於驗證器或 Request 使用。
- 以工廠模式封裝,各驗證器獨立成物件,易於繼承或覆寫。
安裝
快速開始
Laravel Facade
純 PHP
Laravel 驗證規則
| 規則名稱 | 說明 | 範例 |
|---|---|---|
isBan |
統一編號。參數:old/oldRules 套用舊演算法 |
isBan:old |
isIdCardNumber |
身分證/外來人口證號。支援複數參數(逗號分隔)。scope=a\|b 指定驗證範圍(詳見下方說明)。nationalId=false 關閉身分證驗證。ui=true/false 或 uiOld=true、uiNew=false 控制新舊格式。uiNewCategories=foreignOrStateless,statelessResident 指定可接受族群。 |
isIdCardNumber:scope=citizen,isIdCardNumber:nationalId=false,uiOld=false,uiNewCategories=hkMacaoResident,isIdCardNumber:scope=resident-new,uiNewCategories=foreignOrStateless,isIdCardNumber:scope=resident,citizen,ui=false |
isMobileBarcode |
電子發票手機條碼 | - |
isCitizenDigitalCertificate |
自然人憑證 | - |
isDonationCode |
電子發票捐贈碼 | - |
isCreditCard |
信用卡號,參數加上 issuer 代表同時檢查發卡組織 |
isCreditCard:issuer |
相容舊版規則
原有的規則名稱仍可使用(isGUI、isNI、isRC、isNewRC、isOriginalRC、isCDC、isCellPhoneBarcode、isDonateCode),內部已改呼叫新方法,建議逐步調整為新命名。
API 一覽
| 方法 | 說明與選項 |
|---|---|
isBan(mixed $value, array $options = []) |
驗證統一編號。applyOldRules 選項開啟舊演算法。 |
isIdCardNumber(mixed $value, array $options = []) |
統一的身分證/外來人口證號驗證。選項: - scope:字串或陣列(citizen、resident-new、resident-original、resident)。- nationalId:布林,預設 true。- uiNumber.oldFormat:布林,預設 true。- uiNumber.newFormat.enabled:布林,預設 true。- uiNumber.newFormat.categories:陣列,預設全部 true,可設定 foreignOrStateless、statelessResident、hkMacaoResident、mainlandChinaResident。 |
isMobileBarcode(mixed $value) |
電子發票手機條碼。 |
isCitizenDigitalCertificate(mixed $value) |
自然人憑證碼。 |
isDonationCode(mixed $value) |
電子發票捐贈碼。 |
isCreditCardNumberValid(mixed $value, array $options = []) |
信用卡卡號。checkIssuerRegexes 控制是否驗證發卡組織。 |
舊版函式(例如
isGuiNumberValid、isNationalIdentificationNumberValid等)仍可使用,但已標記為@deprecated,會轉呼叫新 API。
IdCard scope 與 uiNumber 參數說明
scope:指定允許驗證的證號類別,可使用單一值或|分隔的多值。citizen:只驗證國民身分證字號(第一碼英文字母、第二碼 1 或 2)。resident-new:只驗證新式外來人口/居留證號(第一碼英文字、第二碼 8 或 9)。resident-original:只驗證舊式統一證號(前兩碼英文字,第二碼限 A-D)。resident:同時允許新舊式外來人口證號。
nationalId:布林值(預設true),是否允許國民身分證。uiNumber.oldFormat:布林值(預設true),是否允許舊式外來人口統一證號。uiNumber.newFormat.enabled:布林值(預設true),控制新式統一證號是否驗證。uiNumber.newFormat.categories:陣列,用於限制新式統一證號的族群,鍵值如下(預設皆為true):foreignOrStateless:一般外國人或無國籍人士(第 3 碼 0-6)。statelessResident:無戶籍國民(第 3 碼 7)。hkMacaoResident:香港/澳門居民(第 3 碼 8)。mainlandChinaResident:大陸地區人民(第 3 碼 9)。
範例:
自訂驗證器
每一種驗證皆為獨立類別(位於 src/Validators)。若需擴充,實作 Chaoswey\TaiwanIdValidator\Contracts\ValidatorInterface 後,可透過建構 TaiwanIdValidator 時注入自訂工廠,或註冊自己的 Service Provider 覆寫容器綁定。
升級指南
isGuiNumberValid()、更名為isBan();切換舊版演算法改使用['applyOldRules' => true]。isNationalIdentificationNumberValid()、isResidentCertificateNumberValid()、isNewResidentCertificateNumberValid()、isOriginalResidentCertificateNumberValid()合併為isIdCardNumber();可透過scope與uiNumber控制行為。- Laravel 驗證規則提供新命名(
isBan、isIdCardNumber等),舊名仍可相容。
參考來源
- enylin/taiwan-id-validator(原始 JS 實作)
All versions of taiwan-id-validator with dependencies
PHP Build Version
Package Version
Requires
php Version
>=8.1
The package chaoswey/taiwan-id-validator contains the following files
Loading the files please wait ...