anomalylab / component-identity-card
A simple proof of identity card of the people's Republic of China.
Installs: 105
Dependents: 0
Suggesters: 0
Security: 0
Stars: 174
Watchers: 5
Forks: 32
Open Issues: 2
Requires
- php: ^7.4|^8.0
Requires (Dev)
- phpunit/phpunit: ^7.1|^8.0|^9.0
Suggests
- illuminate/validation: Required to use In laravel, it is recommended to use in versions larger than laravel (^5.5).
This package is auto-updated.
Last update: 2023-07-14 11:30:10 UTC
README
China (region) citizen ID card tool
Simplified Chinese Documentation
China (Mainland) ID card package, the data from the national standard
GB/T 2260-2007
(People's Republic of China administrative divisions code standard).
Other Language
Installing
composer require ofcold/identity-card
Instructions
A component based on People's Republic of China citizen ID card to obtain the user information.This works for any php framework, but only if the php version is greater than 7.1.
Useing
Useing in Laravel Validation
Multi-language add
Please enter a valid Id Card
to your json language package.
use Ofcold\IdentityCard\Rules\IdCard; /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { return [ 'id_card' => [ 'required', new IdCard ] ]; }
Verify your Chinese ID card
// Result false OR Ofcold\IdentityCard\IdentityCard instance. $result = Ofcold\IdentityCard\IdentityCard::make('32010619831029081'); if ( $result === false ) { return 'Your ID number is incorrect'; } print_r($result->toArray());
OR test file.
php test
$idCard = Ofcold\IdentityCard\IdentityCard::make('320106198310290811', 'en'); // Use locale, Current supported zh-cn,en // $idCard = Ofcold\IdentityCard\IdentityCard::make('320106198310290811', 'zh-cn'); if ( $idCard === false ) { return 'Your ID number is incorrect'; } $area = $idCard->getArea(); $gender = $idCard->getGender(); $birthday = $idCard->getBirthday(); $age = $idCard->getAge(); $constellation = $idCard->getConstellation();
Results:
{ "area": "shan xi sheng yun cheng di qu yun cheng shi", "province": "shan xi sheng", "city": "yun cheng di qu", "county": "yun cheng shi", "gender": "Male", "birthday": "1980-03-12", "zodiac": "Pig", "age": 38, "constellation": "Pisces" }
Api
- getArea() : string
Get Area
- getConstellation() : string
Get constellation
- getZodiac() : string
Get zodiac
- getAge() : int
Get age
- getBirthday(string $foramt = 'Y-m-d') : string
Get birthday
- getGender() : string
Get gender
- getCounty() : string|null
Get county
- getCity() : string|null
Get city
- getProvince() : string|null
Get province
- toArray() : array
Get all information.
- toJson(int $option) : string
Json format all information
- __get() : mixed
- __toString() : toJson
CHANGELOG
V3.0.0
- Added Laravel Rule.