PHP code example of ergebnis / json-pointer
1. Go to this page and download the library: Download ergebnis/json-pointer library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ergebnis / json-pointer example snippets
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$referenceToken = Pointer\ReferenceToken::fromString('foo/9000/😆');
$referenceToken->toJsonString(); // 'foo~19000~😆'
$referenceToken->toString(); // 'foo/9000/😆'
$referenceToken->toUriFragmentIdentifierString(); // 'foo~19000~1%F0%9F%98%86'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$referenceToken = Pointer\ReferenceToken::fromJsonString('foo~19000~😆');
$referenceToken->toJsonString(); // 'foo~19000~😆'
$referenceToken->toString(); // 'foo/9000/😆'
$referenceToken->toUriFragmentIdentifierString(); // 'foo~19000~1%F0%9F%98%86'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$referenceToken = Pointer\ReferenceToken::fromUriFragmentIdentifierString('foo~19000~1%F0%9F%98%86');
$referenceToken->toJsonString(); // 'foo~19000~😆'
$referenceToken->toString(); // 'foo/9000/😆'
$referenceToken->toUriFragmentIdentifierString(); // 'foo~19000~1%F0%9F%98%86'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$referenceToken = Pointer\ReferenceToken::fromInt(9001);
$referenceToken->toJsonString(); // '9001'
$referenceToken->toString(); // '9001'
$referenceToken->toUriFragmentIdentifierString(); // '9001'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$one = Pointer\ReferenceToken::fromString('foo/bar');
$two = Pointer\ReferenceToken::fromJsonString('foo~1bar');
$three = Pointer\ReferenceToken::fromString('foo/9000');
$one->equals($two); // true
$one->equals($three); // false
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$jsonPointer = Pointer\JsonPointer::document();
$jsonPointer->toJsonString(); // ''
$jsonPointer->toUriFragmentIdentifierString(); // '#'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$jsonPointer = Pointer\JsonPointer::fromJsonString('/foo/bar/😆');
$jsonPointer->toJsonString(); // '/foo/bar/😆'
$jsonPointer->toUriFragmentIdentifierString(); // '#/foo/bar/%F0%9F%98%86'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$jsonPointer = Pointer\JsonPointer::fromUriFragmentIdentifierString('#/foo/bar/%F0%9F%98%86');
$jsonPointer->toJsonString(); // '/foo/bar/😆'
$jsonPointer->toUriFragmentIdentifierString(); // '#/foo/bar/%F0%9F%98%86'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$referenceTokens = [
Pointer\ReferenceToken::fromString('foo'),
Pointer\ReferenceToken::fromString('bar'),
];
$jsonPointer = Pointer\JsonPointer::fromReferenceTokens(...$referenceTokens);
$jsonPointer->toJsonString(); // '/foo/bar'
$jsonPointer->toUriFragmentIdentifierString(); // '#/foo/bar'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$one = Pointer\JsonPointer::fromJsonString('/foo/bar');
$two = Pointer\JsonPointer::fromJsonString('/foo~1bar');
$three = Pointer\JsonPointer::fromUriFragmentIdentifierString('#/foo/bar');
$one->equals($two); // false
$one->equals($three); // true
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$jsonPointer = Pointer\JsonPointer::fromJsonString('/foo/bar');
$referenceToken = Pointer\ReferenceToken::fromString('baz');
$newJsonPointer = $jsonPointer->append($referenceToken);
$newJsonPointer->toJsonString(); // '/foo/bar/baz'
$newJsonPointer->toUriFragmentIdentifierString(); // '#foo/bar/baz'
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::always();
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // true
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // true
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::closure(static function (Pointer\JsonPointer $jsonPointer) {
return $jsonPointer->toJsonString() === '/foo/bar';
});
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // false
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // true
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::equals(Pointer\JsonPointer::fromJsonString('/foo/bar'));
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // false
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // true
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::never();
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // false
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // false
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::not(Pointer\Specification::equals(Pointer\JsonPointer::fromJsonString('/foo/bar')));
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // true
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // false
declare(strict_types=1);
use Ergebnis\Json\Pointer;
$specification = Pointer\Specification::anyOf(
Pointer\Specification::closure(static function(Pointer\JsonPointer $jsonPointer) {
return $jsonPointer->toJsonString() === '/foo/bar';
}),
Pointer\Specification::equals(Pointer\JsonPointer::fromJsonString('/foo/baz')),
Pointer\Specification::never(),
);
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo')); // false
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/bar')); // true
$specification->isSatisfiedBy(Pointer\JsonPointer::fromJsonString('/foo/baz')); // true