大陸居民身份證、港澳臺居民居住證 Composer 包:驗證、獲取基本資訊以及生成假資料
IdValidator.php
中華人民共和國居民身份證、 中華人民共和國港澳居民居住證 以及 中華人民共和國臺灣居民居住證 號碼驗證工具(PHP Composer 版)支援 15 位與 18 位號碼。基於 ofollow,noindex" target="_blank">JavaScript 版本 。
安裝
composer require "jxlwqq/id-validator"
使用
440308199901101512
和 610104620927690
示例大陸居民身份證均為隨機生成的假資料,如撞車,請聯絡刪除。
810000199408230021
和 830000199201300022
示例港澳臺居民居住證為北京市公安局公佈的居住證樣式號碼。
驗證身份證號合法性
驗證身份證號是否合法,合法返回 true
,不合法返回 false
:
use Jxlwqq\IdValidator\IdValidator; $idValidator = new IdValidator(); $idValidator->isValid('440308199901101512'); // 大陸居民身份證 18 位 $idValidator->isValid('610104620927690');// 大陸居民身份證 15 位 $idValidator->isValid('810000199408230021'); // 港澳居民居住證 18 位 $idValidator->isValid('830000199201300022'); // 臺灣居民居住證 18 位
獲取身份證號資訊
當身份證號合法時,返回分析資訊(地區、出生日期、星座、生肖、性別、校驗位),不合法返回 false
:
use Jxlwqq\IdValidator\IdValidator; $idValidator = new IdValidator(); $idValidator->getInfo('440308199901101512'); // 18 位 $idValidator->getInfo('610104620927690');// 15 位
返回資訊格式如下:
[ 'addressCode'=> '440308',// 地址碼 'abandoned'=> 0,// 地址碼是否廢棄,1 為廢棄的,0 為正在使用的 'address'=> '廣東省深圳市鹽田區', // 地址 'birthdayCode'=> '1999-01-10',// 出生日期 'constellation' => '水瓶座',// 星座 'chineseZodiac' => '卯兔',// 生肖 'sex'=> 1,// 性別,1 為男性,0 為女性 'length'=> 18,// 號碼長度 'checkBit'=> '2',// 校驗碼 ]
生成可通過校驗的假資料
偽造符合校驗的身份證:
fakeId()
方法有 4 個可選引數:
-
$eighteen
是否生成 18 位號碼,預設為true
; -
$address
地址,即省市縣三級地區官方全稱,如北京市
、臺灣省
、香港特別行政區
、深圳市
、黃浦區
等,預設或引數非法,則生成合法的隨機地址; -
$birthday
出生日期,如2000
、198801
、19990101
等,預設或引數非法,則生成合法的隨機出生日期; -
$sex
性別,1 為男性,0 為女性,預設或引數非法,則生成合法的隨機性別;
use Jxlwqq\IdValidator\IdValidator; $idValidator = new IdValidator(); $idValidator->fakeId();// 18 位 $idValidator->fakeId(false);// 15 位 $idValidator->fakeId(true, '上海市', '2000', 1);// 生成出生於 2000 年上海市的男性居民身份證 $idValidator->fakeId(true, '南山區', '1999', 0);// 生成出生於 1999 年廣東省深圳市南山區的女性居民身份證 $idValidator->fakeId(true, '江蘇省', '200001', 1));// 生成出生於 2000 年 1 月江蘇省的男性居民身份證 $idValidator->fakeId(true, '廈門市', '199701', 0));// 生成出生於 2000 年 1 月福建省廈門市的女性居民身份證 $idValidator->fakeId(true, '臺灣省', '20131010', 0);// 生成出生於 2013 年 10 月 10 日臺灣省的女性居民居住證 $idValidator->fakeId(true, '香港特別行政區', '19970701', 0); // 生成出生於 1997 年 7 月 1 日香港特別行政區的女性居民居住證
參考資料
-
GB 11643-1999 公民身份證號碼 -
GB 2260-1995 中華人民共和國行政區劃程式碼 - 中華人民共和國公民身份號碼
- 中華人民共和國民政部:行政區劃程式碼
- 中華人民共和國行政區劃程式碼歷史資料集
- 國務院辦公廳關於印發《港澳臺居民居住證申領發放辦法》的通知
- 港澳臺居民居住證
Change Log
fakeId()
License
MIT
專案地址: https://github.com/jxlwqq/id-validator ,歡迎 Star。