| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | 
							- <?php namespace System\Validation\Rules;
 
- use System\Str;
 
- use System\Validation\Rangable_Rule;
 
- class Length_Of extends Rangable_Rule {
 
- 	/**
 
- 	 * Evaluate the validity of an attribute.
 
- 	 *
 
- 	 * @param  string  $attribute
 
- 	 * @param  array   $attributes
 
- 	 * @return bool
 
- 	 */
 
- 	public function check($attribute, $attributes)
 
- 	{
 
- 		if ( ! is_null($nullable = parent::check($attribute, $attributes)))
 
- 		{
 
- 			return $nullable;
 
- 		}
 
- 		$value = trim((string) $attributes[$attribute]);
 
- 		// ---------------------------------------------------------
 
- 		// Validate the exact length of the attribute.
 
- 		// ---------------------------------------------------------
 
- 		if ( ! is_null($this->size) and Str::length($value) !== $this->size)
 
- 		{
 
- 			$this->error = 'string_wrong_size';
 
- 		}
 
- 		// ---------------------------------------------------------
 
- 		// Validate the maximum length of the attribute.
 
- 		// ---------------------------------------------------------
 
- 		elseif ( ! is_null($this->maximum) and Str::length($value) > $this->maximum)
 
- 		{
 
- 			$this->error = 'string_too_big';
 
- 		}
 
- 		// ---------------------------------------------------------
 
- 		// Validate the minimum length of the attribute.
 
- 		// ---------------------------------------------------------
 
- 		elseif ( ! is_null($this->minimum) and Str::length($value) < $this->minimum)
 
- 		{
 
- 			$this->error = 'string_too_small';
 
- 		}
 
- 		return is_null($this->error);
 
- 	}
 
- }
 
 
  |