PHPackages                             unrealmanu/abstract-walker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. unrealmanu/abstract-walker

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

unrealmanu/abstract-walker
==========================

walker recursive abstract helper

0.0.4(6y ago)02MITPHPPHP ^7.2CI failing

Since Mar 22Pushed 6y agoCompare

[ Source](https://github.com/unrealmanu/abstractWalker)[ Packagist](https://packagist.org/packages/unrealmanu/abstract-walker)[ Docs](https://github.com/unrealmanu/)[ RSS](/packages/unrealmanu-abstract-walker/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (4)Used By (0)

ABSTRACT WALKER
===============

[](#abstract-walker)

##### Manuel Trebbi

[](#manuel-trebbi-unrealmanumastergmailcom)

Walk on the deepest level of object or array with filter by instance and control of deep level
----------------------------------------------------------------------------------------------

[](#walk-on-the-deepest-level-of-object-or-array-with-filter-by-instance-and-control-of-deep-level)

### CMD LIST

[](#cmd-list)

#### Launch TEST:

[](#launch-test)

```
composer test tests

```

#### Fix LINT

[](#fix-lint)

```
composer fix tests
composer fix src

```

#### Install GIT-HOOK

[](#install-git-hook)

```
./scripts/install-hook.bash

```

USAGE
-----

[](#usage)

##### Extends unrealmanu\\Walker\\AbstractWalker

[](#extends-unrealmanuwalkerabstractwalker)

##### example:

[](#example)

- ./tests/Walk.php

### Necessary Method

[](#necessary-method)

```
    abstract function loadChildren(array $parent): array;

    /**
     * @param $parent
     * @return array
     */
    public function walk($parent): array;

    /**
     * @param $parent
     * @return Generator
     */
    public function walkGen($parent): Generator;
```

#### METHOD

[](#method)

Define action to get object/array childrens and return this

```
LoadChidren($parent)
```

Return array of walked elements

```
walk($parent) [low performance - easy to use and check]
```

Return the "raw" generator used for walking in the deepest of elements...

```
walkGen($parent) [best perfomance]
```

#### OPTIONS

[](#options)

##### unrealmanu\\Walker\\DTO\\WalkOptions (predefined)

[](#unrealmanuwalkerdtowalkoptions-predefined)

##### unrealmanu\\Walker\\DTO\\WalkOptionsInterface (for future implementation)

[](#unrealmanuwalkerdtowalkoptionsinterface-for-future-implementation)

true = recursive, false = stop in first depth level

```
    public function setRecursiveProcessStatus(bool $status = true): bool;
```

Set Class instance for filter the children in walking process

```
    public function setFilterInstance(array $class): array;
```

Set the limit of deepest recursion level

```
    public function setRecursiveDepthLimit(int $recursiveDepthLimit): void;
```

Make your custom logic filter for item in recursive processes

```
    public function itemFilter($item): bool
```

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

3

Last Release

2239d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f981ced6addf7e792f200b8e4621b6d9effe3f895d29b179e2479358a43de8a8?d=identicon)[unrealmanu](/maintainers/unrealmanu)

---

Top Contributors

[![unrealmanu](https://avatars.githubusercontent.com/u/3137910?v=4)](https://github.com/unrealmanu "unrealmanu (14 commits)")

---

Tags

symfonyrecursivewalker

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/unrealmanu-abstract-walker/health.svg)

```
[![Health](https://phpackages.com/badges/unrealmanu-abstract-walker/health.svg)](https://phpackages.com/packages/unrealmanu-abstract-walker)
```

###  Alternatives

[craue/config-bundle

Database-stored settings made available via a service for your Symfony project.

1771.0M4](/packages/craue-config-bundle)[maba/webpack-bundle

Bundle to Integrate Webpack to Symfony

123268.2k4](/packages/maba-webpack-bundle)[sensiolabs/minify-bundle

Assets Minifier (CSS, JS) for Symfony &amp; Minify integration in Asset Mapper

5694.9k1](/packages/sensiolabs-minify-bundle)[symfony_persia/symfonyjdate

Jalali (Shamsi) DateTime for Symfony2, Supports year higher than 2038

1010.6k](/packages/symfony-persia-symfonyjdate)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
