Skip to content

sleagon/chinaid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHINA ID(中国大陆身份证)

Build Status Go Report Card GoDoc MIT license

校验、解析中国大陆身份证号

身份证号校验

package main
import (
    "log"
    "github.com/sleagon/chinaid"
)

func main() {
    id := chinaid.IDCard("420683199006041237")
    result := id.Valid()
    log.Println(">>>>", result)
}

身份证信息解析

package main
import (
    "log"
    "github.com/sleagon/chinaid"
)

func main() {
    id := chinaid.IDCard("420683199006041237")
    result, err := id.Decode()
    if err != nil {
        log.Println("非法身份证号")
        return
    }
    log.Println(">>>>", result)
}

结果示例

{
    "sex":       1,
    "code":      420683,
    "district":  "枣阳市",
    "city":      "襄阳市",
    "province":  "湖北省",
    "birthday":  "1990-06-04T00:00:00Z"
}

地域映射

身份证里的地域码往地域转换的映射表来自中华人民共和国民政部官网,本项目里目前用的版本是2020年7月更新的版本,后续会不定期更新。

依赖示例

go get github.com/sleagon/chinaid

dep

[[constraint]]
   name = "github.com/sleagon/chinaid"
   version = "0.3"