PHPackages                             aesonus/paladin - 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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. aesonus/paladin

AbandonedArchivedLibrary[Validation &amp; Sanitization](/categories/validation)

aesonus/paladin
===============

Validate method parameters based on their doc blocks

v2.0.1(7y ago)04561MITPHPPHP &gt;=5.6 || &gt;=7

Since Mar 23Pushed 5y agoCompare

[ Source](https://github.com/Aesonus/paladin)[ Packagist](https://packagist.org/packages/aesonus/paladin)[ RSS](/packages/aesonus-paladin/feed)WikiDiscussions master Synced today

READMEChangelog (10)Dependencies (1)Versions (23)Used By (1)

Paladin
=======

[](#paladin)

This package allows for method arguments to be validated according to their docblocks

Installation
------------

[](#installation)

Simply install with composer:

```
composer require aesonus/paladin

```

Usage
-----

[](#usage)

Usage is simple. Just use the trait ValidatesParameters in your classes:

```
use Aesonus\Paladin\ValidatesParameters;
```

To validate parameters, just call the protected method validate with the method name and arguments:

```
/**
 *
 * @param int[] $param
*/
public function myMethod(array $param)
{
    $this->validate(__METHOD__, func_get_args());
}
```

The previous example will throw an exception if the passed argument is not an array of only int types.

You can use most psalm types as well. Refer to psalm documentation to see what types you can use.

Currently, templates and complex callables cannot be validated

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity68

Established project with proven stability

 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 ~47 days

Recently: every ~194 days

Total

20

Last Release

2127d ago

Major Versions

v0.4.2 → v1.0.0-beta2018-06-18

v0.4.3 → v1.0.1-beta2018-06-21

v1.0.3 → v2.02018-07-19

v2.0.1 → 3.0.x-dev2020-09-01

PHP version history (3 changes)v0.1.0PHP ^5.6

v1.0.3PHP &gt;=5.6 || &gt;=7

3.0.x-devPHP ^7.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/24643115?v=4)[Cory Laughlin](/maintainers/Aesonus)[@Aesonus](https://github.com/Aesonus)

---

Top Contributors

[![Aesonus](https://avatars.githubusercontent.com/u/24643115?v=4)](https://github.com/Aesonus "Aesonus (103 commits)")

### Embed Badge

![Health badge](/badges/aesonus-paladin/health.svg)

```
[![Health](https://phpackages.com/badges/aesonus-paladin/health.svg)](https://phpackages.com/packages/aesonus-paladin)
```

###  Alternatives

[chaoswey/taiwan-id-validator

台灣身分證、統一編號驗證

319.9k](/packages/chaoswey-taiwan-id-validator)

PHPackages © 2026

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