malikzh / caregnum-kz
哈萨克斯坦共和国汽车登记号码解析器
1.1
2018-05-24 12:06 UTC
Requires (Dev)
- phpunit/phpunit: ^4.8
This package is auto-updated.
Last update: 2024-09-08 20:46:14 UTC
README
哈萨克斯坦共和国汽车国家号码解析库
使用方法
要使用此库,您需要通过包管理器Composer安装它:$ composer require "malikzh/caregnum-kz":"1.*"
之后,您可以使用库的主要方法 parse()
示例 #1
解析旧式国家号码
use Malikzh\CaregnumKz; $result = CaregnumKz::parse('D916ECA'); // Будет возвращен CaregnumKzResult объект
示例 #2
解析新式国家号码
use Malikzh\CaregnumKz; $result = CaregnumKz::parse('282ERT04'); // или $result = CaregnumKz::parse('KZ282ERT04'); // Будет возвращен CaregnumKzResult объект
自动将西里尔字母转换为拉丁字母
如果我们写下
use Malikzh\CaregnumKz; $result = CaregnumKz::parse('А987ЕТА'); // Здесь все буквы написаны в кириллице
则库会自动替换为相应的拉丁字母。
返回结果
使用 CaregnumKz::parse()
方法时,它总是会返回一个包含以下字段的 CaregnumKzResult
对象
$carRegNum // Гос.номер приведенный в общий формат (в верхнем регистре и с обработанными символами кириллице. См. выше) // Следует отметить, что при вводе гос.номера в новом формате: KZ000ABC00 будет в начале удален KZ. $regionName = ''; // Название региона на рус. языке $region2012 = ''; // Код региона, который используется в образцах 2012 года $region1993 = ''; // Код региона, который используется в образцах 1993 года $regionNum = -1; // Порядковый номер региона в массиве $regnumType = 0; // Тип гос. номера. Может быть: // CaregnumKzResult::TYPE_2012 - Образец 2012 года // CaregnumKzResult::TYPE_1993 - Образец 1993 года $regnumData = []; // Компоненты рег. номера. Заметьте, что для гос.номеров разных образцов, порядок (регион,цифры,буквы) будет разным
异常(Exceptions)
如果国家号码指定错误,或者选择的地区错误,则库可能会抛出异常。以下是一个示例
use Malikzh\CaregnumKz; try { $result = CaregnumKz::parse('0000'); // заведомо неверный номер } catch (\Malikzh\CaregnumKzException $e) { // Определить, что именно произошло, можно по коду исключения: if ($e->getCode() === \Malikzh\CaregnumKzException::CODE_INVALID_CARNUM) { // Неверный гос.номер } elseif ($e->getCode() === \Malikzh\CaregnumKzException::CODE_INVALID_REGION) { // Неверный регион } }
变更日志
v1.1: 添加了摩托车号码的定义