slashplus / identity
使用德国身份证、德国护照或德国居留许可(eAT)验证个人年龄。
Requires
- php: ~7.3|~8.0
- illuminate/filesystem: ~6.0||~7.0||~8.0
- illuminate/translation: ~6.0||~7.0||~8.0
- illuminate/validation: ~6.0||~7.0||~8.0
Requires (Dev)
- pestphp/pest: ^1.18
- spatie/ray: ^1.34
This package is auto-updated.
Last update: 2024-09-29 05:56:56 UTC
README
使用德国身份证、德国护照或德国居留许可(eAT)验证个人年龄。
验证使用laravels验证包(illuminate/validation
;版本 ~6)。但是它不需要laravel应用程序,因此可以作为库独立使用,只要包的要求不冲突。
安装
通过composer安装包 composer require slashplus/identity
使用
要使用验证,只需通过\Slashplus\Identity\AgeVerification类创建一个新的实例,该类作为具体工厂类,通过传递验证数据和验证方法。根据验证方法(例如id_card
、passport
、residence
),将创建正确的验证器实例并可以使用。
例如,一个id_card
类型的验证
// note: this example contains invalid data, but you get an idea $validator = \Slashplus\Identity\AgeVerification::create([ [ 'serial' => '5484197598', 'birth' => '9512210', 'expire' => '4702025', 'nationality' => 'D', 'checksum' => '4' ] ]);
您可以使用来自Slashplus\Identity\Contracts\Validation
契约的所有验证方法,该契约扩展了\Illuminate\Contracts\Validation\Validator
契约。
这意味着如果需要,您可以从验证器获取以下信息
// regular illuminate methods i.e. $validatedData = $validator->validated(); // array of validated Data (throws exception) // additional data i.e. $validatedBirth = $validator->validatedBirthDate(); // DateTime object (throws exception) $validatedExpire = $validator->validatedExpireDate(); // DateTime object (throws exception)
数据结构
输入数据可能取决于验证类型。有关更多信息,请参阅类型目录及其readme文件。
id_card
: src/Validation/IdCardValidation/README.mdpassport
: src/Validation/PassportValidation/README.mdresidence
: src/Validation/ResidenceValidation/README.md
路线图
目前,只有三种验证类型用于检查与德国身份证、德国护照和德国居留许可(eAT)的数据。在未来的版本中,这可能会扩展。请随时贡献或告诉我们您的愿望。🚀
目前,这个包使用版本 ~6 的laravel组件。这是因为这个包应该与PHP 7.3兼容,在创建时,它还必须与symfony组件的版本兼容,这些版本是laravel较新版本不允许安装的。一旦这不再成为问题,所需的包版本将更新。可能想要分支这个包的人应该知道,它应该与laravel 6-8兼容,但不能保证兼容性。