PHPackages                             kkandmore/paramverify - 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. kkandmore/paramverify

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

kkandmore/paramverify
=====================

Parameter verify tool

v2.0.0(6y ago)011MITPHP

Since Mar 19Pushed 6y ago1 watchersCompare

[ Source](https://github.com/KK-ZHUANG/paramverify)[ Packagist](https://packagist.org/packages/kkandmore/paramverify)[ RSS](/packages/kkandmore-paramverify/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependenciesVersions (2)Used By (0)

Why I use it?
=============

[](#why-i-use-it)

before
------

[](#before)

```
$_POST = [
  'username' => 'kkzhuang',
  'password' => 'kkzhuang',
  'gender' => 'M',
];

if(@!$_POST['username'])
{
  exit('username is required!');
}
if(!preg_match('/^[0-9A-Za-z]{6,64}$/', $_POST['username']))
{
  exit('username re mismatch!');
}
if(@!$_POST['password'])
{
  exit('password is required!');
}
if(!preg_match('/^[0-9A-Za-z\.\-_+]{6,64}$/', $_POST['password']))
{
  exit('password re mismatch!');
}
if(@!$_POST['gender'])
{
  exit('gender is required!');
}
if(!preg_match('/^(M|F)$/', $_POST['gender']))
{
  exit('gender re mismatch!');
}
...
```

after
-----

[](#after)

```
$_POST = [
  'username' => 'kkzhuang',
  'password' => 'kkzhuang',
  'gender' => 'M',
];

$verify = [
  'username' => ['re' => '/^[0-9A-Za-z]{6,64}$/'],
  'password' => ['re' => '/^[0-9A-Za-z\.\-_+]{6,64}$/'],
  'gender' =>['re' => '/^$|^(M|F)$/'],
];

$return = (new Paramverify)->verify($_POST, $verify);
exit($return['msg']);
...
```

Getting Started
===============

[](#getting-started)

```
require 'Paramverify.php';
use Paramverify\Paramverify;
$param = [
  'username' => 'kkzhuang',
  'password' => 'kkzhuang._-+',
];

$verify = [
  'username' =>['re' => '/^([a-z0-9]{6,64})$/'],
  'password' =>['re' => '/^([a-z0-9\.\-_+]{6,64})$/'],
  'gender' =>['required' => false, 'type' => 'string', 're' => '/^$|^(M|F)$/', 'msg' => 'Element "gender" must be empty string or M|F!'],
];

$return = (new Paramverify)->verify($param, $verify);
echo $return['status'] ? 'Yes' : $return['msg'];  //Yes
```

Configuration
=============

[](#configuration)

The default configuration array is :

```
$config = [
  'required' => true,
  'type' => 'string',
  're' => '',
  'msg' => null,
  'filters' => [],
  'is_defined' => true,
];
```

If you want to change the default configuration, call to (new Paramverify)-&gt;config($config).

```
require 'Paramverify.php';
use Paramverify\Paramverify;

$param = [
  'username' => '  kkzhuang  ',
  'password' => 'kkzhuang._-+',
  'email' => 'kk@kk.com',
];

$config = [
  'required' => false,
  'is_defined' => false,
];

$verify = [
  'username' => ['required' => true, 'type' => 'string', 're' => '/^[0-9A-Za-z]{6,64}$/', 'filters' => ['trim', 'strtoupper']],
  'password' => ['required' => true, 're' => '/^[0-9A-Za-z\.\-_+]{6,64}$/'],
  'gender' =>[ 're' => '/^$|^(M|F)$/'],
];

$return = (new Paramverify)->config($config)->verify($param, $verify);
var_dump($return);
```

Error Description
=================

[](#error-description)

error code \[1\]
----------------

[](#error-code-1)

```
require 'Paramverify.php';
use Paramverify\Paramverify;

$param = [
  'username' => 'kkzhuang',
];

$verify = [
  'username' =>['re' => '/^([a-z0-9]{6,64})$/'],
  'password' =>['re' => '/^([a-z0-9\.\-_+]{6,64})$/', 'msg' => 'Element "password" format error!'],
];

$return = (new Paramverify)->verify($param, $verify);
echo $return['status'] ? 'Yes' : $return['msg'];  //[password] error code [1]
```

error code \[2\]
----------------

[](#error-code-2)

```
$param = [
  'username' => 'kkzhuang',
  'password' => 123456,
];

$verify = [
  'username' =>['re' => '/^([a-z0-9]{6,64})$/'],
  'password' =>['re' => '/^([a-z0-9\.\-_+]{6,64})$/', 'msg' => 'Element "password" format error!'],
];

$return = (new Paramverify)->verify($param, $verify);
echo $return['status'] ? 'Yes' : $return['msg'];  //[password] error code [2]
```

error code \[3\]
----------------

[](#error-code-3)

```
$param = [
  'username' => 'kkzhuang._-+',
  'password' => 'kkzhuang._-+',
];

$verify = [
  'username' =>['re' => '/^([a-z0-9]{6,64})$/'],
  'password' =>['re' => '/^([a-z0-9\.\-_+]{6,64})$/', 'msg' => 'Element "password" format error!'],
];

$return = (new Paramverify)->verify($param, $verify);
echo $return['status'] ? 'Yes' : $return['msg'];  //[username] error code [3]
```

In verify array,if you define 'msg' for verify element,the msg will replace error code \[3\].

```
$param = [
  'username' => 'kkzhuang._-+',
  'password' => 'kkzhuang._-+',
];

$verify = [
  'username' =>['re' => '/^([a-z0-9]{6,64})$/', 'msg' => 'Element "username" format error!'],
  'password' =>['re' => '/^([a-z0-9\.\-_+]{6,64})$/', 'msg' => 'Element "password" format error!'],
];

$return = (new Paramverify)->verify($param, $verify);
echo $return['status'] ? 'Yes' : $return['msg'];  //Element "username" format error!
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

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

2251d ago

### Community

Maintainers

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

---

Top Contributors

[![KK-ZHUANG](https://avatars.githubusercontent.com/u/17874570?v=4)](https://github.com/KK-ZHUANG "KK-ZHUANG (6 commits)")[![kkkkkkkkkkkkklllk](https://avatars.githubusercontent.com/u/76076076?v=4)](https://github.com/kkkkkkkkkkkkklllk "kkkkkkkkkkkkklllk (1 commits)")

### Embed Badge

![Health badge](/badges/kkandmore-paramverify/health.svg)

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

###  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)
