PHP Class ActiveRecord\Validations

This class isn't meant to be directly used. Instead you define validators thru static variables in your {@link Model}. Example: class Person extends Activerecord\Model { static $validatesLengthOf = array( array('name', 'within' => array(30,100), array('state', 'is' => 2) ); } $person = new Person(); $person->name = 'Tito'; $person->state = 'this is not two characters'; if (!$person->is_valid()) print_r($person->errors);
See also: Errors
Show file Open project: jpfuentes2/php-activerecord Class Usage Examples

Public Methods

Method Description
__construct ( ActiveRecord\Model $model ) : Validations Constructs a {@link Validations} object.
get_record ( )
rules ( ) : array Returns validator data.
validate ( ) : Errors Runs the validators.
validates_exclusion_of ( array $attrs ) This is the opposite of {@link validates_include_of}.
validates_format_of ( array $attrs ) Validates that a value is matches a regex.
validates_inclusion_of ( array $attrs ) Validates that a value is included the specified array.
validates_inclusion_or_exclusion_of ( string $type, $attrs ) Validates that a value is in or out of a specified list of values.
validates_length_of ( array $attrs ) Validates the length of a value.
validates_numericality_of ( array $attrs ) Validates that a value is numeric.
validates_presence_of ( array $attrs ) Validates a field is not null and not blank.
validates_size_of ( array $attrs ) Alias of {@link validates_length_of}
validates_uniqueness_of ( array $attrs ) Validates the uniqueness of a value.

Private Methods

Method Description
is_blank_with_option ( $var, &$options )
is_null_with_option ( $var, &$options )

Method Details

__construct() public method

Constructs a {@link Validations} object.
public __construct ( ActiveRecord\Model $model ) : Validations
$model ActiveRecord\Model The model to validate
return Validations

get_record() public method

public get_record ( )

rules() public method

Returns validator data.
public rules ( ) : array
return array

validate() public method

Runs the validators.
public validate ( ) : Errors
return Errors the validation errors if any

validates_exclusion_of() public method

Available options:
  • in/within: attribute should/shouldn't be a value within an array
  • message: custome error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
See also: validates_inclusion_of
public validates_exclusion_of ( array $attrs )
$attrs array Validation definition

validates_format_of() public method

class Person extends ActiveRecord\Model { static $validates_format_of = array( array('email', 'with' => '/^.*?@.*$/') ); } Available options:
  • with: a regular expression
  • message: custom error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
public validates_format_of ( array $attrs )
$attrs array Validation definition

validates_inclusion_of() public method

class Car extends ActiveRecord\Model { static $validates_inclusion_of = array( array('fuel_type', 'in' => array('hyrdogen', 'petroleum', 'electric')), ); } Available options:
  • in/within: attribute should/shouldn't be a value within an array
  • message: custome error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
public validates_inclusion_of ( array $attrs )
$attrs array Validation definition

validates_inclusion_or_exclusion_of() public method

Available options:
  • in/within: attribute should/shouldn't be a value within an array
  • message: custome error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
See also: validates_inclusion_of
See also: validates_exclusion_of
public validates_inclusion_or_exclusion_of ( string $type, $attrs )
$type string Either inclusion or exclusion
$attrs Validation definition

validates_length_of() public method

class Person extends ActiveRecord\Model { static $validates_length_of = array( array('name', 'within' => array(1,50)) ); } Available options:
  • is: attribute should be exactly n characters long
  • in/within: attribute should be within an range array(min,max)
  • maximum/minimum: attribute should not be above/below respectively
  • message: custome error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings. (Even if this is set to false, a null string is always shorter than a maximum value.)
public validates_length_of ( array $attrs )
$attrs array Validation definition

validates_numericality_of() public method

class Person extends ActiveRecord\Model { static $validates_numericality_of = array( array('salary', 'greater_than' => 19.99, 'less_than' => 99.99) ); } Available options:
  • only_integer: value must be an integer (e.g. not a float)
  • even: must be even
  • odd: must be odd"
  • greater_than: must be greater than specified number
  • greater_than_or_equal_to: must be greater than or equal to specified number
  • equal_to: ...
  • less_than: ...
  • less_than_or_equal_to: ...
  • allow_blank: allow blank strings
  • allow_null: allow null strings
public validates_numericality_of ( array $attrs )
$attrs array Validation definition

validates_presence_of() public method

class Person extends ActiveRecord\Model { static $validates_presence_of = array( array('first_name'), array('last_name') ); } Available options:
  • message: custom error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
public validates_presence_of ( array $attrs )
$attrs array Validation definition

validates_size_of() public method

Alias of {@link validates_length_of}
public validates_size_of ( array $attrs )
$attrs array Validation definition

validates_uniqueness_of() public method

class Person extends ActiveRecord\Model { static $validates_uniqueness_of = array( array('name'), array(array('blah','bleh'), 'message' => 'blech') ); } Available options:
  • with: a regular expression
  • message: custom error message
  • allow_blank: allow blank strings
  • allow_null: allow null strings
public validates_uniqueness_of ( array $attrs )
$attrs array Validation definition