Эта библиотека выполняет различные задачи, связанные с посткодом Великобритании.
Чтобы установить, просто запустите следующую команду композитора.
composer require divineomega/php-postcodes
Использование некоторых из функций поиска данных, предоставленных этой библиотекой, требует службы поиска почтовых индексов. В настоящее время он поддерживает следующие службы поиска почтовых индексов.
Зарегистрируйтесь на соответствующем веб -сайте, если вам нужно использовать эти функции.
Затем вы можете использовать следующий код, чтобы получить соответствующий объект службы поиска почтового индекса.
$ postcodeLookupService = new DivineOmega Postcodes Objects IdealPostcodes ( ' API_KEY ' );
// OR
$ postcodeLookupService = new DivineOmega Postcodes Objects PostcodeAnywhere ( ' API_KEY ' );
// OR
$ postcodeLookupService = new DivineOmega Postcodes Objects PostcodesIo ();Чтобы получить адреса, связанные с британским почтовым индексом, просто передайте его методу, показанному ниже. Вы получите множество объектов адреса, соответствующим образом разделенным по их адресам и другими деталями.
$ addresses = $ postcodeLookupService -> getAddressesByPostcode ( ' ST163DP ' ); Вы можете проверить, что почтовый индекс в Великобритании является правильным, используя класс утилиты Validator . Пример того, как это сделать, показан ниже.
$ validated = DivineOmega Postcodes Utils Validator:: validatePostcode ( ' ST163DP ' );Обратите внимание, что проверка почтового индекса нечувствительна.
Эта библиотека позволяет генерировать случайный, допустимый почтовый индекс в Великобритании. Это использует класс утилиты Generator , как показано ниже.
$ postcode = DivineOmega Postcodes Utils Generator:: generatePostcode ();Первая часть почтового индекса, например, PO1, называется внешним кодом, поскольку он идентифицирует город или район, в который следует отправить письмо для дальнейшей сортировки. Вторая часть почтового индекса EG 1EB называется внутренним кодом.
$ outwardCode = DivineOmega Postcodes Utils Tokenizer:: outward ( ' ST163DP ' ); // Returns ST16
$ inwardCode = DivineOmega Postcodes Utils Tokenizer:: inward ( ' ST163DP ' ); // Returns 3DP