svil4ok/validation

PHP 验证库

dev-master 2017-03-22 09:42 UTC

This package is not auto-updated.

Last update: 2024-09-20 19:09:31 UTC


README

Build Status

简单轻量级的独立 PHP 验证数据库。

用法

<?php

use SGP\Validation\Validator;

$input = [
    'name' => 'Svilen Popov',
    'comment' => 'This a comment',
    'users' => [
        [
            'age' => 20,
            'username' => 'username1'
        ],
        [
            'age' => 16,
            'username' => 'username2'
        ]
    ]
];

$rules = [
    'name' => 'required',
    'comment' => 'required|min:20',
    'users.*.age' => 'required|min:18'
];

$messages = [
    'comment.min' => 'Your comment should have at least 20 chars.'
];

$validator = Validator::make($input, $rules, $messages);

$errors = $validator->errors()->all();

foreach ($errors as $error) {
    echo $error . PHP_EOL;
}

以上示例将输出

Your comment should have at least 20 chars.
The users.1.age minimum is 18

可用规则

- alpha

检查值是否只包含字母字符。

'field' => 'alpha'
- alpha_num

检查值是否只包含字母数字字符。

'field' => 'alpha_num'
- boolean

检查值是否可以被转换为布尔类型。接受的输入有 truefalse10"1""0"

'field' => 'boolean'
- date_after:param

检查值是否是有效的日期并且晚于指定的日期。

'field' => 'date_after:2017-01-01'
- date_before:param

检查值是否是有效的日期并且早于指定的日期。

'field' => 'date_before:2017-01-01'
- date

检查值是否是符合输入格式的日期/时间字符串。

'field' => 'date'
- max:int

检查值是否是整数。

'field' => 'int'
- max:param

检查值是否小于给定的尺寸。规则适用于字符串、数值和数组。

'field' => 'max:20'
- min:param

检查值是否大于给定的尺寸。规则适用于字符串、数值和数组。

'field' => 'max:20'
- max:numeric

检查值是否是数值。

'field' => 'numeric'
- required

检查值是否不为空或null。

'field' => 'required'