Download the PHP package ngtfkx/laradeck-address-generator without Composer
On this page you can find all versions of the php package ngtfkx/laradeck-address-generator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ngtfkx/laradeck-address-generator
More information about ngtfkx/laradeck-address-generator
Files in ngtfkx/laradeck-address-generator
Package laradeck-address-generator
Short Description Generating real addresses to create test data
License MIT
Homepage https://github.com/ngtfkx/laradeck-address-generator
Informations about the package laradeck-address-generator
Laradeck Address Generator
Генерация реальных адресов для нужд разработки.
В отличии от Faker адреса реальныe для каждого города и их можно выводить на карту. Теперь у тестировщика не будет вопросов - почему маркер на карте не совпадает с адресом и как это объяснить клиенту/заказчику.
Install
Via Composer
Если необходимы консольные команды или подключение своих источников данных, то добавьте в файл config/app.php
(для версий <=5.4.*)
сервис-провайдер
Usage
Получение случайного адреса для любого из городов, который есть в пакете
Получение случайного адреса для любого из указанных городов
Documentation
Получение адреса
Для получения адреса существуют следующие методы
getRandomAddress($forCity = null): Address
- получить один адресgetRandomAddresses(int $count, $forCity = null): Collection
- получить коллекцию с указанным кол-ом адресов
По умолчанию случайный адрес может быть сгенерирован для любого из поддерживаемых городов (если алиас города не указан параметром)
Установка города
Если надо сгенерировать адрес для конкретного города(ов), то надо принудительно указать эти города. Для этого есть следующие методы
addCity(string $city): Generator
- добавить город по его алиасу в список использованныхaddCities(...$cities): Generator
- добавить несколько городов (можно через запятую, можно массивом)setCities(...$cities): Generator
- добавить несколько городов, обнулись ранее добавленные
Объект типа Address
Содержить следующие методы
getFull(): string
- получить полный адрес (с городом, улицей и номером дома)getInsideLocality(): string
- получить адрес нутри населенного пункта (только улица и номер дома)getLocality(): string
- получить наименование населенного пунктаgetStreet(): string
- получить наименование улицыgetBuilding(): string
- получить номер дома
Структура хранения данных
Данные для генерации адресов по городам храняться в папке data/ru
в файле {cityId}.php
в
виде массива, где {cityId}
- id города в системе http://nominatim.openstreetmap.org/
Информация о списке поддерживаемых городов и их алиасах хранится в файле data/ru/cities.php
виде массива
Подключение пользовательских данных
Для подключения пользовательских данных положите файл аналогичной структуры (см. Структура хранения данных) в любое место и укажите абсолютный путь до него от корня диска. Далее подключаете данные следующим образом
Теперь адреса населенного пункта Нефтебаза доступны для генерации.
Статистика
Для получения информации о доступных городах и адресах есть консольная команда
php artisan address:stat
Генерация своих файлов данных
Для генерации файла данных есть консольная команда
php artisan address:city-address-ru {city} {url} {--limit=0}
- {city} - id города в системе http://nominatim.openstreetmap.org/
- {url} - первая страница города со списком улиц на сайте http://www.city-address.ru/, например вот такая
- {--limit=0} - кол-во обрабатываемых страниц (0 - все)
Поддерживаемые города
- Омск. Адресов: 27 297
- Новосибирск. Адресов: 41 052
- Красноярск. Адресов: 14 628
- Барнаул. Адресов: 16 668
- Томск. Адресов: 17 859
- Сургут. Адресов: 2 649
- Белгород. Адресов: 13 524
- Брянск. Адресов: 14 844
- Иваново. Адресов: 18 333
- Сочи. Адресов: 6 885
- Магнитогорск. Адресов: 7 846
- Тверь. Адресов: 12 494
- Улан-Удэ. Адресов: 14 229
- Ставрополь. Адресов: 8 204
- Курск. Адресов: 2 327
- Калининград. Адресов: 13 618
- Тула. Адресов: 12 081
- Чебоксары. Адресов: 7 315
- Киров. Адресов: 8 966
- Липецк. Адресов: 14 182
- Пенза. Адресов: 18 877
- Набережные Челны. Адресов: 4 947
- Астрахань. Адресов: 35 539
- Рязань. Адресов: 10 751
- Новокузнецк. Адресов: 22 101
- Кемерово. Адресов: 20 679
- Оренбург. Адресов: 17 617
- Махачкала. Адресов: 1 100
- Владивосток. Адресов: 7 739
- Ярославль. Адресов: 14 571
- Хабаровск. Адресов: 16 990
- Иркутск. Адресов: 15 746
- Ульяновск. Адресов: 12 533
- Ижевск. Адресов: 13 636
- Тольятти. Адресов: 8 107
- Тюмень. Адресов: 18 074
- Саратов. Адресов: 16 236
- Краснодар. Адресов: 6 143
- Волгоград. Адресов: 37 421
- Воронеж. Адресов: 22 383
- Пермь. Адресов: 4 495
- Уфа. Адресов: 19 805
- Ростов-на-Дону. Адресов: 37 131
- Самара. Адресов: 19 083
- Челябинск. Адресов: 23 013
- Казань. Адресов: 30 572
- Нижний Новгород. Адресов: 22 949
- Екатеринбург. Адресов: 4 936
- Санкт-Петербург. Адресов: 20 138
- Москва. Адресов: 34 015
Change log
Please see CHANGELOG for more information on what has changed recently.
Credits
- Denis Sandal
- All Contributors
Milestones
- Version 1: базовая функциональность
- Version 2: подключение стран, локализация, геокординаты, перевод на английский
- Version 3: отвязка от фреймворка
License
The MIT License (MIT). Please see License File for more information.