stefna/json-pointer

2.7.1 2024-12-09 10:02 UTC

This package is auto-updated.

Last update: 2024-12-11 12:49:24 UTC


README

Build Status Latest Version on Packagist Software License

JSON Pointer implementation

Inspired by https://github.com/gamringer/JSONPointer

Requirements

PHP 8.2 or higher.

Installation

composer require stefna/json-pointer

Usage

Test if document has pointer

$document = [
	"foo" => ["bar", "baz"],
	"qux" => "quux"
];

$document = new \JsonPointer\BasicDocument('test', $document);

var_dump($document->has('/foo'));

var_dump($document->has('/foo/bar'));

/* Results:

bool(true)
bool(false)

*/

Retrieving value form document

$document = [
	"foo" => ["bar", "baz"],
	"qux" => "quux"
];

$document = new \JsonPointer\BasicDocument('test', $document);

var_dump($document->get('/foo'));

var_dump($document->get('/foo/bar'));

/* Result

array(2) {
  [0] =>
  string(3) "bar"
  [1] =>
  string(3) "baz"
}

Throws JSONPointer\Exceptions\Reference - Referenced element does not exist: bar 

*/

Contribute

We are always happy to receive bug/security reports and bug/security fixes

License

The MIT License (MIT). Please see License File for more information.