PHPackages                             eternalphp/validate - 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. eternalphp/validate

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

eternalphp/validate
===================

eternalphp/Validate

v1.0(6y ago)04MITPHPPHP &gt;=5.6

Since Apr 1Pushed 6y ago1 watchersCompare

[ Source](https://github.com/eternalphp/Validate)[ Packagist](https://packagist.org/packages/eternalphp/validate)[ RSS](/packages/eternalphp-validate/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependenciesVersions (2)Used By (0)

```
	$_POST["title"] = "标题标题标题标题标题";
	$_POST["content"] = "内容内容";

	$validate = new Validate();

	$validate->make(function($rule){
		$rule->field("title");
		$rule->rule("required")->message("标题不能为空");
		$rule->rule("chinese")->message("标题必须包含中文");
		$rule->rule("maxlength")->value(10)->message("标题长度不能少于10");
	});

	$validate->make(function($rule){
		$rule->field("email");
		$rule->rule("required")->message("邮件地址不能为空");
		$rule->rule("email")->message("邮件地址不正确");
	});

	$result = $validate->validate($_POST,function($errors){
		 print_r($errors);
	});

```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% 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

2238d ago

### Community

Maintainers

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

---

Top Contributors

[![eternalphp](https://avatars.githubusercontent.com/u/13829842?v=4)](https://github.com/eternalphp "eternalphp (1 commits)")[![eternalYuan](https://avatars.githubusercontent.com/u/53560109?v=4)](https://github.com/eternalYuan "eternalYuan (1 commits)")

---

Tags

validate

### Embed Badge

![Health badge](/badges/eternalphp-validate/health.svg)

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

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[wixel/gump

A fast, extensible &amp; stand-alone PHP input validation class that allows you to validate any data.

1.2k1.3M30](/packages/wixel-gump)[inhere/php-validate

generic data validate, filter library of the php

26787.4k13](/packages/inhere-php-validate)[sadegh19b/laravel-persian-validation

A comprehensive Laravel validation package for Persian text, numbers, dates, and Iranian national identifiers

18293.8k1](/packages/sadegh19b-laravel-persian-validation)[abcaeffchen/sepa-utilities

SepaUtilities provides useful methods for validating and sanitizing inputs used in SEPA files supporting PHP &gt;= 8.1.

312.0M2](/packages/abcaeffchen-sepa-utilities)[awurth/slim-validation

A wrapper around the respect/validation PHP validation library for easier error handling and display

65378.4k9](/packages/awurth-slim-validation)

PHPackages © 2026

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