PHPackages                             4lxndr/rector-rules - 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. 4lxndr/rector-rules

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

4lxndr/rector-rules
===================

Custom Rector rules

1.0.0(3mo ago)076WTFPLPHPPHP ^8.2CI passing

Since Feb 2Pushed 3mo agoCompare

[ Source](https://github.com/4lxndr/rector-rules)[ Packagist](https://packagist.org/packages/4lxndr/rector-rules)[ RSS](/packages/4lxndr-rector-rules/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

Custom Rector Rules
===================

[](#custom-rector-rules)

This project contains custom Rector rules for PHP code refactoring.

Rules
-----

[](#rules)

### SortGettersSettersByPropertyOrderRector

[](#sortgetterssettersbypropertyorderrector)

Sorts accessor methods by the order of properties in the class, with magic methods first.

This rule organizes methods in the following order:

1. Magic methods (e.g., `__construct`, `__toString`) come first
2. Accessor methods are sorted by their corresponding property order in the class
3. For each property, accessors are ordered as: getter, setter, adder, remover
4. Other methods (business logic) remain at the end in their relative order

Supported accessor method prefixes:

- **Getters**: `get*`, `is*`, `has*`, `can*`, `should*`
- **Setters**: `set*`
- **Adders**: `add*`
- **Removers**: `remove*`

**Example:**

```
// Before
class SomeClass
{
    private $status;
    private $enabled;
    private $permission;
    private $edit;
    private $item;

    public function getItem() {}
    public function businessMethod() {}
    public function setStatus($value) {}
    public function __toString() {}
    public function hasPermission($name) {}
    public function addItem($item) {}
    public function isEnabled() {}
    public function __construct() {}
    public function removePermission($name) {}
    public function canEdit() {}
    public function setEnabled($value) {}
    public function getStatus() {}
    public function addPermission($name) {}
}

// After
class SomeClass
{
    private $status;
    private $enabled;
    private $permission;
    private $edit;
    private $item;

    public function __construct() {}
    public function __toString() {}
    public function getStatus() {}
    public function setStatus($value) {}
    public function isEnabled() {}
    public function setEnabled($value) {}
    public function hasPermission($name) {}
    public function addPermission($name) {}
    public function removePermission($name) {}
    public function canEdit() {}
    public function getItem() {}
    public function addItem($item) {}
    public function businessMethod() {}
}
```

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance82

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

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

Unknown

Total

1

Last Release

97d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/be01b40e2dbe9d915a89ed7554ba520bc57c7cf2446322b5315a0e61bfff45cb?d=identicon)[4lxndr](/maintainers/4lxndr)

---

Top Contributors

[![4lxndr](https://avatars.githubusercontent.com/u/15173990?v=4)](https://github.com/4lxndr "4lxndr (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisRector

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/4lxndr-rector-rules/health.svg)

```
[![Health](https://phpackages.com/badges/4lxndr-rector-rules/health.svg)](https://phpackages.com/packages/4lxndr-rector-rules)
```

###  Alternatives

[nuhel/filament-croppie

182.2k](/packages/nuhel-filament-croppie)[qinchen/web-utils

A web application common utils

111.4k](/packages/qinchen-web-utils)

PHPackages © 2026

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