Download the PHP package ybushenko/json-parser without Composer

On this page you can find all versions of the php package ybushenko/json-parser. 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 json-parser

Json-parser

GitHub release (latest by date) build codecov

Json-parser - это универсальный парсер, который с помощью определенных правил, переводит json в массив PHP, при этом в качестве источника данных может использоваться файл, текст или url.

Результат:

Установка

composer require ybushenko/json-parser

Источник данных (Loader)

Текст (TextLoader)

Для использования текстового источника данных, достаточно в конструктор TextLoader передать json в виде текста:

Файл (FileLoader)

Для того, чтобы загрузка json происходила из файла, нужно передать в конструктор FileLoader абсолютный путь до файла:

Url (UrlLoader)

Также возможно загружать json по url, для этого нужно использовать UrlLoader. Вторым аргументом можно передать клиент для http запросов совместимый с GuzzleHttp\ClientInterface

Правила обработки (Rules)

Для преобразования данных в массив используются специальные правила, с помощью которых можно получать данные и преобразовывать их в нужный вид

Путь через точку (DotPathRule)

При использовании данного правила, парсер будет пытаться получить данные по указанному пути.

Массив данных (ArrayRule)

При использовании данного правила, парсер будет пытаться получить данные по указанному пути и вернет массив массивов с указанными нодами во втором аргументе.

Кастомная обработка (CallableRule)

Для собственной обработки значения можно использовать CallableRule. Правило принимает анонимную функцию, и в качестве входного аргумента передаст объект целиком, чтобы пользователь смог обработать значение сам.

Из словаря (FromDictionaryRule)

Для того, чтобы использовать данное правило, для начала нужно добавить словарь в объект парсера:

Первым аргументом метода addDictionary выступает имя словаря, которое потребуется в будущем, вторым аргументом может быть либо массив(как в примере выше), либо строка с путем через точку до массива данных в самом json. Например:

В этом случае в качестве словаря будет использоваться сам json, а точнее его часть указанная во втором аргументе. Для того, чтобы словарь мог использоваться парсером, он должен состоять из ключ-значение. В качестве значения допускается массив, объект и другие типы.

Правило используется таким образом:

Для начала парсер будет пытаться получить значение из path.to.node_id, а дальше сопоставит это значение со значением из словаря. Если такое значение в словаре будет найдено, то он заменит его.

Дополнительно полученное значение можно обработать (например удалить начальные и конечные пробелы), для этого используется третий аргумент, который принимает анонимную функцию:

Настройки

Игнорирование ошибок (setIgnoreErrors)

Для проверки целостности данных, по умолчанию парсер будет выкидывать исключение если по заданному пути не была найдена нода. Для игнорирования таких ошибок следует использовать настройку setIgnoreErrors(true)

Базовый путь (setBasePath)

По умолчанию парсер ожидает json с массивом в корневой ноде. Эту ноду можно изменить с помощью метода setBasePath. Данная настройка позволяет задать путь до данных, которые следует парсить.

Нода по указанному пути должна являться массивом.

Дополнительно

Добавление json без лоадеров (setJson)

Возможно использование json прямую, без лоадеров. Для этого можно воспользоваться методом setJson

При добавлении "сырого" json кода, он все равно превратится в массив, как и во всех предыдущих случаях, а также применится базовый путь (basePath), оригинальный(полный) json можно получить с помощью метода getOriginalJson. Этот метод также вернет массив


All versions of json-parser with dependencies

PHP Build Version
Package Version
Requires guzzlehttp/guzzle Version ^6.5
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 ybushenko/json-parser contains the following files

Loading the files please wait ....