NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #730 most downloaded on Packagist
JSONPath implementation for parsing, searching and flattening arrays
Last release 10 days ago
28 Sep 2026
Ships fairly regularly
a new release about every 6 months
Most releases are documented
notes for 21 of 26 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
26 releases · first in 2020
One column per quarter.
Added the RFC 9535 length() , count() , match() , search() , and value() function extensions.
length(), count(), match(), search(), and value() function extensions.Aligned every current result with the JSONPath comparison consensus or majority.
🔻 Breaking changes ahead:
.length handling.==, !=, <, <=, >, >=) and logical expressions; legacy single/strict equality, regex, membership, arithmetic, literal-only truth tests, array/object comparison literals, and function-like expressions are now unsupported.null, and corrected missing-member/path-to-path comparisons.Fixed tokenizer handling for quoted bracket keys containing $ so literals like ['[$the.size$]'] remain atomic and do not split into root tokens.
Fixed tokenizer handling for quoted bracket keys containing $ so literals like ['[$the.size$]'] remain atomic and do not split into root tokens.
Full Changelog: 1.0.1...1.0.2
Aligned the query runner and lexer with the JSONPath comparison suite: JSON documents are now decoded as objects to preserve {} vs [] , unsupported se
{} vs [], unsupported selectors no longer abort the runner, and dot-notation now accepts quoted keys with dots/spaces/leading @.?(true|false|null)), literal short-circuiting (&& false, || true), and empty filters now return the expected collections instead of throwing.Full Changelog: 1.0.0...1.0.1
…JSONPath core helpers. Runs reflection-free and deprecation-free.
Version 1.0.0 is finally here!
$[name,year] and $["name","year"].']', '*', $, backslashes, and mixed punctuation.$..books[0,1,2,]).in/nin/!in, tautological expressions, and ?@ existence behavior per RFC.$[1:3,4], $[*,1]).Full Changelog: 0.11.0...1.0.0
JSONPathToken now uses a TokenType enum and the constructor signature changed accordingly.
🔻 Breaking changes ahead:
JSONPathToken now uses a TokenType enum and the constructor signature changed accordingly.JSONPath options flag is now an int bitmask (was bool), requiring callers to pass integer flags.SliceFilter returns an empty result for non-positive step values (previously iterated indefinitely).QueryResultFilter now throws a JSONPathException for unsupported operators instead of silently proceeding.arrayValues throws on invalid types; ArrayAccess lookups check offsetExists before reading; traversables and objects are handled distinctly.TokenType enum, readonly value object for tokens, typed flags/options, and #[\Override] usage.Full Changelog: 0.10.0...0.11.0
Refactoring of QueryMatchFilter and provide greater support for JSONPath spec by @lucasnetau in #79
Full Changelog: 0.9.1...0.10.0
Fixes #20 Filter subpaths by @Schrank in #78
Full Changelog : 0.8.3...0.9.0
Full Changelog: 0.8.3...0.9.0
Change getData() so that it can be mixed instead of array by @rcjsuen in #77
Handle multi-level JSON with objects and arrays by @kapow in #76
object, rather than an ArrayAccess objectFull Changelog : 0.8.0...0.8.1
Full Changelog: 0.8.0...0.8.1
Removed deprecated method JSONPath->data()
🔻 Breaking changes ahead:
JSONPath->data()Nothing published for this version
Added trim to explode to support both 1,2,3 and 1, 2, 3 inputs
Removed PHPUnit from conflicting packages
Fixed PHP 7.4+ compatibility issues
Fixed query/selector "Array Slice With Start Large Negative Number And Open End On Short Array"
Fixed issues with empty tokens ([''] and [""])
[''] and [""])Made JSONPath::__construct final
🔻 Breaking changes ahead:
=~)Removed unnecessary type casting, that caused problems under certain circumstances
nin operator>=)<=)Fixed evaluation on indexed object
in operatorNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →