NAME
Data::Validator::Simple - Simple data validator. Not only for form validator.
SYNOPSIS
use Data::Validator::Simple;
my $data = Data::Validator::Simple->new( data => 5 );
my $result = $data->check( ['BETWEEN', 4, 10 ] );
if( $result ){
print "valid";
}else{
print "error";
}
complex pattern
my $data = Data::Validator::Simple->new( data => 5 , failed => 'failed message' );
my $result = $data->check(
{
rule => [ 'EQUAL_TO', 6 ],
success => 'fist_message',
},
{
rule => [ 'EQUAL_TO', 5 ],
success => 'second_message',
}
);
print $result; # second_message
if want to use as form validator
my $q = CGI->new;
$q->param( id => 'login_id' );
$q->param( name => 'user_name' );
my %params = $q->Vars;
my $form = Data::Validator::Simple->form;
my $results = $form->check(
\%params,
{
id => [ 'ASCII', [ 'LENGTH', 4, 10 ] ],
name => [ 'LENGTH', 4, 20 ]
}
);
if( $results->{id} && $results->{name} ){
print "valid";
}
DESCRIPTION
Data::Validator::Simple is a data validator but not only for form validation.
VALIDATION RULES
- ASCII
-
my $data = Data::Validator::Simple->new( data => 'abcde' ); $data->check( 'ASCII' );
- EQUAL_TO
-
my $data = Data::Validator::Simple->new( data => 5 ); $data->check( [ 'EQUAL_TO', 5 ] ); $data = Data::Validator::Simple->new( data => 'Hello' ); $data->check( [ 'EQUAL_TO', 'Hello' ] );
- LENGTH
-
my $data = Data::Validator::Simple->new( data => 'Hello' ); $data->check( [ 'LENGTH', 5 ] ); $data = Data::Validator::Simple->new( data => 'Hello' ); $data->check( [ 'LENGTH', 4, 6 ] );
- BETWEEN
-
my $data = Data::Validator::Simple->new( data => 5 ); $data->check( [ 'BETWEEN', 2, 10 ] ); my $data = Data::Validator::Simple->new( data => [ 'year', 'month', 'date' ], as => 'DATE' ); $data->check( [ 'BETWEEN', [ 'year', 'month', 'date' ] , [ 'year', 'month', 'date' ] ] );
- GREATER_THAN
-
my $data = Data::Validator::Simple->new( data => 5 ); $data->check( [ 'GREATER_THAN', 4 ] );
- LESS_THAN
-
my $data = Data::Validator::Simple->new( data => 5 ); $data->check( [ 'LESS_THAN', 6 ] );
AUTHOR
Yusuke Wada <yusuke at kamawada.com>
SEE ALSO
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.