poweronsystem/validationservice

通用字段验证服务。

v0.1.1 2018-08-10 17:51 UTC

This package is auto-updated.

Last update: 2024-09-13 02:21:42 UTC


README

具有可定制消息的数据验证服务

通过 Composer 安装

您可以通过 Composer 通过控制台安装 ValidationService

$ composer require poweronsystem/validationservice

要求

  • PHP >= 5.4
  • poweronsystem/utility: "^0.1.3"

使用

创建类和配置,使用标准验证器

//Autoload composer
require '/vendor/autoload.php';

//Configuración del validador (Ver archivo src/Validation.php)
$config =  [
  'return_boolean' => FALSE,
  'date_format' => 'd/m/Y',
  'date_time_format' => 'd/m/Y H:i',
  'time_format' => 'H:i',
];

//Creamos una instancia del validador
$validator = new PowerOn\Validation\Validator($config);

//Creamos reglas de validación
$validator
  ->add('field_1', 'string_allow', ['alpha', 'spaces'])
  ->add('field_2', 'custom', function($value, $formData) {
    //Lógica personalizada
    return $value == 1 && key_exists('field_3', $formData) && $formData['field_3'] === 'some_value';
  })
  ->add('field_2', 'decimal', 2)
  ->add('field_3', 'number', true, \PowerOn\Validation\Rule::WARNING);

//Datos obtenidos de un formulario
$data = [
  'field_1' => 'campo-prueba',
  'field_2' => 12.34,
  'field_3' => 'some_value'
];

//Ejecuto la validación con los datos obtenidos
$validator->validate($data);

//Resultado
var_dump($validator->getErrors()); //array(size=1) 'field_1' => 'Este campo no admite: guiónes medios'
var_dump($validator->getWarnings()); //array(size=1) 'field_3' => 'Debe ser un valor numérico.'

错误和警告

可以配置验证器错误和警告,当字段有如 Rule::WARNING 的验证规则且未通过检查时,验证器继续操作并返回 TRUE。

生成的警报可以通过函数 $validator->getWarnings() 获取