PHPackages                             wpdiggerstudio/wpzylos-validation - 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. wpdiggerstudio/wpzylos-validation

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

wpdiggerstudio/wpzylos-validation
=================================

Minimal validation with localized messages for WPZylos framework

v1.0.0(5mo ago)02341MITPHPPHP ^8.0CI failing

Since Feb 1Pushed 2w agoCompare

[ Source](https://github.com/WPDiggerStudio/wpzylos-validation)[ Packagist](https://packagist.org/packages/wpdiggerstudio/wpzylos-validation)[ Docs](https://github.com/WPDiggerStudio/wpzylos-validation)[ Fund](https://www.paypal.com/donate/?hosted_button_id=66U4L3HG4TLCC)[ RSS](/packages/wpdiggerstudio-wpzylos-validation/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (2)Used By (1)

wpzylos/validation
==================

[](#wpzylosvalidation)

Data validation and form request layer for WordPress plugins. Provides a fluent `Validator`, abstract `FormRequest` with built-in sanitization, structured error handling via `MessageBag`, and extensibility through custom rules.

**Namespace:** `WPZylos\Framework\Validation`

---

Features
--------

[](#features)

- **Validator** - Validate data arrays against rules with pipe syntax or array syntax
- **14 Built-in Rules** - `required`, `string`, `integer`/`int`, `numeric`, `boolean`, `array`, `email`, `url`, `min`, `max`, `in`, `regex`, `nullable`
- **12 Standalone Rule Classes** - `RequiredRule`, `EmailRule`, `UrlRule`, `NumericRule`, `AlphaRule`, `AlphaNumericRule`, `MinRule`, `MaxRule`, `BetweenRule`, `InRule`, `ConfirmedRule`, `RegexRule`
- **FormRequest** - Abstract class combining authorization, sanitization, and validation
- **10 Sanitizer Types** - `text`, `textarea`, `html`, `email`, `url`, `int`, `absint`, `float`, `bool`, `slug`, `key`
- **MessageBag** - Structured error collection with per-field access
- **Custom Rules** - Extend validation via `RuleInterface`
- **i18n Support** - Optional `Translator` integration for localized messages
- **Custom Messages** - Field-specific and rule-level message overrides

---

Requirements
------------

[](#requirements)

RequirementVersionPHP8.1+WordPress6.0+wpzylos/httpRequired for `FormRequest`---

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

[](#installation)

```
composer require wpzylos/validation
```

---

Quick Start
-----------

[](#quick-start)

### Basic Validation

[](#basic-validation)

```
use WPZylos\Framework\Validation\Validator;

$validator = new Validator(
    data:  ['email' => 'invalid', 'name' => ''],
    rules: ['email' => 'required|email', 'name' => 'required|min:2'],
);

if ($validator->fails()) {
    $errors = $validator->errors();
    echo $errors->first('email');  // "The email field must be a valid email address."
    echo $errors->first('name');   // "The name field is required."
}

// Get validated data (throws ValidationException if invalid)
$data = $validator->validated();
```

### FormRequest

[](#formrequest)

```
use WPZylos\Framework\Validation\FormRequest;

class StorePostRequest extends FormRequest
{
    public function rules(): array
    {
        return [
            'title'   => 'required|string|min:3|max:200',
            'content' => 'required|string',
            'status'  => 'required|in:draft,published',
        ];
    }

    public function sanitize(): array
    {
        return [
            'title'   => 'text',
            'content' => 'html',
            'status'  => 'key',
        ];
    }
}
```

---

Documentation
-------------

[](#documentation)

- **[Usage Guide](docs/usage.md)** - Comprehensive guide covering validation, rules, FormRequest, custom rules, and error handling.
- **[API Reference](docs/api-reference.md)** - Full method-by-method reference for every class and interface.

---

Support the Project
-------------------

[](#support-the-project)

- [GitHub Sponsors](https://github.com/sponsors/wpdiggerstudio)
- [PayPal Donate](https://www.paypal.com/donate/?hosted_button_id=66U4L3HG4TLCC)

---

License
-------

[](#license)

MIT License. See [LICENSE](LICENSE) for details.

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance86

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 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

152d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/55980087?v=4)[WPDiggerStudio](/maintainers/WPDiggerStudio)[@WPDiggerStudio](https://github.com/WPDiggerStudio)

---

Top Contributors

[![WPDiggerStudio](https://avatars.githubusercontent.com/u/55980087?v=4)](https://github.com/WPDiggerStudio "WPDiggerStudio (9 commits)")

---

Tags

validationwordpressrulessanitizationform-requestwpzylos

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/wpdiggerstudio-wpzylos-validation/health.svg)

```
[![Health](https://phpackages.com/badges/wpdiggerstudio-wpzylos-validation/health.svg)](https://phpackages.com/packages/wpdiggerstudio-wpzylos-validation)
```

###  Alternatives

[siriusphp/validation

Data validation library. Validate arrays, array objects, domain models etc using a simple API. Easily add your own validators on top of the already dozens built-in validation rules

180773.7k14](/packages/siriusphp-validation)[pearl/lumen-request-validate

Lumen doesn't have form request validator seperatly. This package helps developers to segregate the validation layer from the controller to a separate dedicated class

45400.7k2](/packages/pearl-lumen-request-validate)[progsmile/request-validator

Simple PHP Request Validator

37114.5k1](/packages/progsmile-request-validator)[hybridlogic/validation

A simple, extensible validation library for PHP with support for filtering and validating any input array along with generating client side validation code.

641.1k](/packages/hybridlogic-validation)

PHPackages © 2026

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