PHPackages                             kenjis/secure-validator - 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. kenjis/secure-validator

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

kenjis/secure-validator
=======================

Secure input validation library.

124PHP

Since Jul 16Pushed 10y ago1 watchersCompare

[ Source](https://github.com/kenjis/secure-validator)[ Packagist](https://packagist.org/packages/kenjis/secure-validator)[ RSS](/packages/kenjis-secure-validator/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Secure Validator
================

[](#secure-validator)

[![Latest Stable Version](https://camo.githubusercontent.com/68c1c751586531370cd9cb3fb930c69e791a7dcbfa40f15e9e9baac0d3bcfb89/68747470733a2f2f706f7365722e707567782e6f72672f6b656e6a69732f7365637572652d76616c696461746f722f762f737461626c65)](https://packagist.org/packages/kenjis/secure-validator) [![Total Downloads](https://camo.githubusercontent.com/f371f212a1031c59b86439d2f064c61cbd778153d859863d5299c83a27ad4de4/68747470733a2f2f706f7365722e707567782e6f72672f6b656e6a69732f7365637572652d76616c696461746f722f646f776e6c6f616473)](https://packagist.org/packages/kenjis/secure-validator) [![Latest Unstable Version](https://camo.githubusercontent.com/4d1a9406387c95713e1e6a5153b28fdce202e823696e6fbe3bd2cd79081be62a/68747470733a2f2f706f7365722e707567782e6f72672f6b656e6a69732f7365637572652d76616c696461746f722f762f756e737461626c65)](https://packagist.org/packages/kenjis/secure-validator) [![License](https://camo.githubusercontent.com/650541c9128b786fbd632d48b7905b609d332433fc9bad03bca4a40f039999fb/68747470733a2f2f706f7365722e707567782e6f72672f6b656e6a69732f7365637572652d76616c696461746f722f6c6963656e7365)](https://packagist.org/packages/kenjis/secure-validator)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/7f84b617fd291da08481f3db6069f52d7988ab6c53d5bd83c4b790a1c9f7d0ab/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6b656e6a69732f7365637572652d76616c696461746f722f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/kenjis/secure-validator/?branch=master)[![Coverage Status](https://camo.githubusercontent.com/cb45e6caadbb62b75c57903729dc6e4c7d8c30763c0443d40704ef7fea12fbd3/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6b656e6a69732f7365637572652d76616c696461746f722f62616467652e7376673f6272616e63683d6d6173746572)](https://coveralls.io/r/kenjis/secure-validator?branch=master)[![Build Status](https://camo.githubusercontent.com/af1f79f1995e34db08e34d15494b420ed8ead4622c63ef435f0a69c21c43a858/68747470733a2f2f7472617669732d63692e6f72672f6b656e6a69732f7365637572652d76616c696461746f722e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/kenjis/secure-validator)

Secure Validator is a library for input validation. It is based on [Sirius Validation](https://github.com/siriusphp/validation).

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

[](#requirements)

- PHP 5.4.0 or later

Features
--------

[](#features)

### Default Rules

[](#default-rules)

Secure Validator promotes strict validation. It sets default validation rules to all fields.

- `ValidUtf8` checks if value is valid UTF-8 character encoding
- `IsString` checks if value is string
- `NoControl` checks if value does not have control characters (except for tab and newline)

And

- adds `MaxLength` 1 letter

That is you have to set (overwrite) max length rule to all fields. You don't forget it.

If a field does not match the default rules, you can remove the rules.

```
$validator->remove('field', 'ValidUtf8');
```

### Fatal Rules

[](#fatal-rules)

You can set a validation rule as *fatal* to detect abnormal input like an attack.

```
$validator->add('field', 'maxlength', ['max' => 60, 'fatal' => true]);
```

If a fatal rule fails, exception `FatalValidationError` will be thrown immediately.

### Validated Data

[](#validated-data)

You can get validated data only with `$validator->getValidated()`.

How to Use
----------

[](#how-to-use)

See [example.php](example.php) and [Sirius Validation Documentation](http://www.sirius.ro/php/sirius/validation/).

```
$validator = new \Kenjis\Validation\Validator;
$validator->add('field', 'required | maxlength(max=60)');
if ($validator->validate($_POST)) {
    // validation passed
} else {
    // validation failed
}
```

See [Built-in validation rules](http://www.sirius.ro/php/sirius/validation/validation_rules.html).

### Added Method

[](#added-method)

#### `Validator::filter()`

[](#validatorfilter)

Add filtering rule of Sirius\\Filtration. See [Built-in filters](https://github.com/siriusphp/filtration/blob/master/docs/filters.md).

Validator will apply filters before validation.

```
$validator->filter('field', 'StringTrim');
```

#### `Validator::getValidated()`

[](#validatorgetvalidated)

Get validated values.

```
$allData = $validator->getValidated();

$field = $validator->getValidated('field');
```

#### `Validator::getInputValue()`

[](#validatorgetinputvalue)

Get input value after filtering of specific field.

```
$field = $validator->getInputValue('field');
```

### Tips

[](#tips)

When you set `required`, if a rule fails, Sirius Validation will not apply any more rules to that field.

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/220fcd79c66bd061265dfe8d29cc640250616c4719dfb31f4ab87a1af101dc65?d=identicon)[kenjis](/maintainers/kenjis)

---

Top Contributors

[![kenjis](https://avatars.githubusercontent.com/u/87955?v=4)](https://github.com/kenjis "kenjis (69 commits)")

### Embed Badge

![Health badge](/badges/kenjis-secure-validator/health.svg)

```
[![Health](https://phpackages.com/badges/kenjis-secure-validator/health.svg)](https://phpackages.com/packages/kenjis-secure-validator)
```

###  Alternatives

[webmozart/assert

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

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

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