Download the PHP package liquetsoft/fias-symfony without Composer

On this page you can find all versions of the php package liquetsoft/fias-symfony. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package fias-symfony

ФИАС bundle

Latest Stable Version Total Downloads License Build Status

Бандл symfony для установки данных из ФИАС.

Для установки ФИАС используются xml-файлы, ссылки на которые предоставляются SOAP-сервисом информирования ФИАС.

Установка

Бандл устанавливается с помощью composer и следует стандартной структуре, поэтому на symfony >=4.2 устанавливается автоматически.

  1. Установить пакет с помощью composer:

  2. В силу огромных размеров данных ФИАС, сущности Doctrine не регистрируются сразу в проекте. Для каждой предоставлен MappedSuperclass, с помощью которого можно получать обновления полей исключительно для тех сущностей, которые требуются проекту. Кроме того, это позволит дополнить или изменить структуру таблиц. Например, для добавления списка адресов:

    Список доступных суперклассов:

    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\AddrObj
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\AddrObjDivision
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\AddrObjTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\AdmHierarchy
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Apartments
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\ApartmentTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Carplaces
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\ChangeHistory
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Houses
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\HouseTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\MunHierarchy
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\NormativeDocs
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\NormativeDocsKinds
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\NormativeDocsTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\ObjectLevels
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\OperationTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Param
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\ParamTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\ReestrObjects
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Rooms
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\RoomTypes
    • Liquetsoft\Fias\Symfony\LiquetsoftFiasBundle\Entity\Steads
  3. Отдельно следует создать сущность для управления версиями ФИАС, установленными на проекте, которая используется для обновления:

  4. После создания всех сущностей, следует создать соответствующие им миграции, и применить их:

  5. Необходимо указать бандлу какие именно сущности используются (те сущности, для которых не указан класс конвертации использоваться не будут) и в какие объекты конвертируются (важно понимать, что сущность на стороне проекта может быть любой, даже не унаследованной от одного из суперклассов, стандартный сериализатор symfony попробует преобразовать xml в указанный объект):

  6. Поскольку для записи в БД используется Doctrine, нужно отключить логгирование запросов, иначе скрипт падает с переполнением памяти:

Использование

Бандл определяет несколько значимых команды консоли:

  1. Установка ФИАС с ноля

  2. Обновление ФИАС через дельту (установка запускается только в первый раз, а обновление следует поставить в качестве задачи для cron)

  3. Текущий статус серверов ФИАС (сервис информирования или сервер с файлами могут быть недоступны по тем или иным причинам)

  4. Список доступных для установки и обновления версий ФИАС

  5. Загрузка и распаковка архива с полной версией ФИАС

  6. Установка ФИАС из указанного каталога

  7. Обновление ФИАС из указанного каталога

  8. Принудительная установка номера текущей версии ФИАС

Производительность

Есть несколько возможностей ускорить импорт, используя настройки бандла:

  1. убрать неиспользуемые сущности; к примеру, если информация о парковочных местах не требуется, то можно отключить соответствие для CARPLACES

  2. поскольку в формате ГАР все данные разделены по папкам регионов, то можно исключить обработку файлов для неиспользуемых регионов

    
    # config/packages/liquetsoft_fias.yaml
    liquetsoft_fias:
        files_filter:
            - "#^.+/extracted/30/AS_.+$#" # разрешает все данные для региона
            - "#^.+/extracted/AS_.+$#"    # разрешает общие словари
            # все остальные файлы будут проигнорированы

All versions of fias-symfony with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
liquetsoft/fias-component Version ^14.0
symfony/uid Version ^5.0|^6.0|^7.0
symfony/framework-bundle Version ^5.0|^6.0|^7.0
symfony/http-client Version ^5.0|^6.0|^7.0
doctrine/doctrine-bundle Version ^2.0|^3.0
doctrine/orm Version ^2.6|^3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package liquetsoft/fias-symfony contains the following files

Loading the files please wait ....