Download the PHP package nandan108/prop-path without Composer

On this page you can find all versions of the php package nandan108/prop-path. 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 prop-path

PropPath

CI Coverage Style Packagist Psalm Level

TL;DR PropPath is a powerful query engine for PHP that lets you extract deeply nested values from arrays and objects using concise, expressive syntax. Inspired by JSONPath but tailored for modern PHP, it supports recursive traversal, multi-key mapping, fallback resolution, bracket grouping, and structured mode โ€” all compiled into fast, reusable closures.


What is PropPath?

PropPath is a feature-rich, extensible query engine for extracting values from complex PHP object graphs, arrays, or a mix of both. Inspired by JSONPath and built for modern PHP codebases, PropPath compiles string-based or structured path expressions into efficient extractor closures that traverse nested structures using a powerful set of operators.

It powers advanced features in the DTO Toolkit, enabling concise and expressive mapping between input payloads and strongly typed DTOs.


Use cases and philosophy

PropPath is designed for:

It follows a few guiding principles:


๐Ÿ“ฆ Installation


๐Ÿš€ Quick Start

PropPath compiles a path string (or structured array) into an extractor closure:

The compiled closure takes an associative array of roots as its argument.

๐Ÿ“š Nested Example


๐Ÿงฉ Syntax Reference

Find the full syntax reference at docs/Syntax.md


๐Ÿงต Structured Mode

Instead of a single path string, you can pass an array structure:

This allows you to mirror a desired shape without building complex bracket paths.


๐Ÿง  How It Compares to JSONPath

PropPath is inspired by JSONPath but diverges where needed for better PHP ergonomics:

Feature JSONPath PropPath
Root marker $ $, $dto, $context, etc.
Wildcard * *, with depth control
Recursive descent .. **
Filters โœ… ๐Ÿ”ธ Not supported (may be added later via symfony/expression-language)
Multi-key extraction โŒ โœ… [foo, bar] or ['x' => path]
Fallback resolution (??) โŒ โœ…
Array flattening โŒ โœ… ~, @~
Structured input mode โŒ โœ…

๐Ÿง  Container-agnostic access JSONPath uses different syntax to access objects vs arrays. PropPath does not. It uses a unified syntax for all container types (arrays, objects, or ArrayAccess).

Brackets in PropPath do not indicate container type โ€” they serve to:

  1. Build arrays from multiple values
  2. Group expressions for correct evaluation order For example, foo.*.bar.0 applies .0 per item. [foo.*.bar].0 applies .0 to the overall result.

๐Ÿ“Œ Performance Notes

PropPath compiles each path into a memoized closure using an xxh3-based hash. Structured and recursive queries (**) may be slower; typical paths are fast and safe to cache.


โš™๏ธ Tooling + Integration


๐Ÿ›  API Reference


โœ… Quality


๐Ÿ“„ License and Attribution

MIT License ยฉ nandan108 Author: Samuel de Rougemont


All versions of prop-path with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
nandan108/prop-access Version ^0.5.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 nandan108/prop-path contains the following files

Loading the files please wait ....