Ваши комментарии

Нет, возвращается либо json либо xml объект. Результат разбора содержит много дополнительной информации, от ФИАС кодов адреса до пригодности разобранного адреса к разным бизнес-сценариям.

Вы используете Подсказки, а они не предназначены для исправления существующих данных. Их задача – помочь пользователю удобно ввести данные.

Используйте API Стандартизации для работы с существующими адресами. Вот пример запроса и ответа для адресов. Обратите внимание, сам запрос и URL отличаются от Подсказок.

Насколько я вижу, вы отправляете запрос по URL API Стандартизации, но не передаете секретный ключ. А он необходим для Стандартизации.

Еще вы создали тему в разделе Подсказок. Если вдруг планировали использовать именно Подсказки – у них другая логика работы, и другие задачи, чем у Стандартизации. Вот сравнение сервисов.

В ночь с 12 на 13 сентября обновим стандартизацию. Есть изменения в API. По подсказкам небольшие изменения в семантике района города.

Потому что адреса улица Малышева, дом 31а опять же нет в ФИАС. Есть дом 31, есть дом 31Б. В таком случае мы проставляем код ближайшего дома, если его нет – диапазона.

Код ФИАС, который вы считаете верным, принадлежит такому адресу:

г Екатеринбург, пр-кт Ленина, стр 24а

Легко проверить на сайте ФИАС:


Строение и дом в ФИАС – абсолютно разные вещи. Например, строение может принадлежать дому. Также на одной улице могут быть дом и строение с одинаковым номером, но это разные адреса.

Дома 24А по Ленинскому проспекту в ФИАС нет. Но в ФИАС вообще нет многих реально существующих домов. Поэтому этот дом мы парсим, и проставляем для него код ФИАС подходящего диапазона домов.

Проект https://github.com/gietos/dadata использует API стандартизации. В нем нет и не было параметров from_bound или to_bound. Эти параметры есть в API подсказок.

Метод cleanAddress возвращает объект типа Address. У него есть все необходимые поля. Ваш код неявно вызывает метод toString, который отдает конкретно поле result (адрес одной строкой).


Чтобы получить значения конкретных полей, запрашивайте их явно.

$address = $client->cleanAddress('екатеринбург ленина 24а');
$city = $address->$city;

Сервис поддержки клиентов работает на платформе UserEcho