Download the PHP package obernard/property-indexer without Composer

On this page you can find all versions of the php package obernard/property-indexer. 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 property-indexer

🖇 Porperty Indexer & Tree builder

PorpertyIndexer and PropertyTree are iterables.

Index key and value values one case, nodes and leaves in the other are retreived from objects or arrays via symfony/property-access component.

Installation

Porperty Indexer

A PorpertyIndexer indexes objects/arrays properties inside a key-value map.

Choose :

Index objects properties

Say you have objects with properties id and value:

Create an indexer for id&value objects :

Add objects:

Retreive indexed values via their key:

Or directly via a reference to an indexed object:

Index array properties

Say you have array maps with id and value keys:

Create an indexer for id&value arrays (note the use of brakets for array property path):

Add arrays:

Retreive indexed values via their key:

Bulk Load collections

Use the load method:

Or invoke PropertyIndexer with a third argument:

Index Objects or Arrays (not their properties)

Don't specify the value path or set it to null when invoking PropertyIndexer:

Porperty Tree Builder

A PorpertyTree builds a Tree structure from a collection of objects.

Leaves path and values are picked from the items of the processed collection.

Porperty Tree basics

Say you have objects with properties id, value and date:

Porperty Tree mode ARRAY_LEAF

Mind the possible colisions between objects sharing the "same" properties path:

To avoid possible colisions, switch to array-type leaves:

Porperty Tree advanced features

Closure as valuePath

$valuePath 2nd arg accepts a one-arg Closure (that must return int|string). While iterating the object|array collection, PorpertyTree will bind the arg with the current object|array item to extract a value.

To retrieve the object items themselves, you may use an Identity Closure ( or better set valuePath to null :P ) :

Closure as groupByproperties

array $groupByproperties 3nd arg accepts one-arg Closures (that must return int|string). While iterating the object|array collection, PorpertyTree will bind the arg with the current object|array item to extract a tree-path node :

Those 2 examples are dumb-ones. Closures are for performing complex tasks (to retrieve path or leaves) that objects properties do not provide natively.

Tests

Run composer test.

Contributing

Feel free to submit pull requests.

Licence

MIT

Copyright (c) 2022 Olivier BERNARD


All versions of property-indexer with dependencies

PHP Build Version
Package Version
Requires php Version >=8.0
symfony/property-access Version >=5.4
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 obernard/property-indexer contains the following files

Loading the files please wait ....