承接 seorc/phpiv 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

seorc/phpiv

最新稳定版本:v0.3.0

Composer 安装命令:

composer require seorc/phpiv

包简介

A simple PHP input validation toolset.

关键字:

README 文档

README

This is a really-small PHP validator which is intended to offer a easy-to-use interface and some mechanisms to integrate with other tools. Here is how it works:

  1. Create an associative array of values.

  2. Create a validator for each of the values in that array. The preferred way of doing this is by grouping all your validators in a ValidatiorSet.

  3. Apply the ValidatorSet to the array. A ValidationError will tel you that one or more fields in the array are not valid according to the rules you had defined.

  4. Obtain the set of errors associated to their corresponding field by calling ValidationError::getErrors() on the exception instance you catched.

Please, see the tests to get some hints on how to make this in work in code. I plan to add some parctical examples to this docs in future commits.

The design of this validator imitates what other frameworks do. I created it to have a simple validation tool-belt for small projects and for fun.

Simple example:

<?php

require __DIR__ . '/../vendor/autoload.php';

use Phpiv\ValidatorSet;
use Phpiv\ValidationError;

$validateThis = array(
    'name' => 'John Doe',
    'rating' => '6',
    'comment' => 'This is too short.',
    'email_address' => 'not an email address'
);

$vs = new ValidatorSet();

$vs->add('string', 'name')
    ->required();
$vs->add('number', 'age')
    ->required();
$vs->add('number', 'rating')
    ->min(1)
    ->max(5);
$vs->add('string', 'comment')
    ->length(20, 100)
    ->required();
$vs->add('email', 'email_address')
    ->required();

try {
    $vs->check($validateThis);
}
catch(ValidationError $e) {
    print_r($e->getErrors());
}

/*
The output is:

Array
(
    [age] => Array
        (
            [0] => Es requerido
        )

    [rating] => Array
        (
            [0] => No puede ser mayor de 5
        )

    [comment] => Array
        (
            [0] => Debe tener 20 caracteres como mínimo
        )

    [email_address] => Array
        (
            [0] => No es un email válido
        )

)
*/

Testing

You will require PHPUnit to run the test. It is included in the composer.json as a development dep. You can run the tests as follows:

./vendor/bin/phpunit

Code status

Build Status

统计信息

  • 总下载量: 972
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-06-15