Skip to main content

Valid lib

This guide provides documentation for the valid class methods used in the AVRO framework.

credit_card()

Check is a valid credit card. Return a card type if the number is true.

Parameters: $data

Usage Example:

$this->lib->valid->credit_card(...);
$this->lib->valid->credit_card('123456'); // False
$this->lib->valid->credit_card('Hello'); // False
$this->lib->valid->credit_card('4111111111111111'); // Visa True
$this->lib->valid->credit_card('5500000000000004'); // MasterCard True

username()

Check is username 6–128 char,will start with char A-Z, a-z.

Parameters: $data, $min = 6, $max = 128

Usage Example:

$this->lib->valid->username(...);
$this->lib->valid->username('jd'); // False
$this->lib->valid->username('1JohnDoe'); // False
$this->lib->valid->username('JohnDoe'); // True
$this->lib->valid->username('john_doe'); // True

guid()

Check is GUID

Parameters: string $data

Usage Example:

$this->lib->valid->guid(...);
$this->lib->valid->guid('6B29FC4000DD010662DA'); // False
$this->lib->valid->guid('Hello'); // False
$this->lib->valid->guid(17); // False
$this->lib->valid->guid('6B29FC40-CA47-1067-B31D-00DD010662DA'); // True

decimal()

Check is decimal

Parameters: string $data

Usage Example:

$this->lib->valid->decimal(...);
$this->lib->valid->decimal('abc'); // False
$this->lib->valid->decimal('10.50'); // True
$this->lib->valid->decimal('10'); // True
$this->lib->valid->decimal('-5.5'); // True

code_iso_2()

Check is code_iso_2

Parameters: string $data

Usage Example:

$this->lib->valid->code_iso_2(...);
$this->lib->valid->code_iso_2('17'); // False
$this->lib->valid->code_iso_2('Hello'); // False
$this->lib->valid->code_iso_2('hy'); // True

custom_regex()

Check with regexp@access public

Parameters: string $data, string $pattern

Usage Example:

$this->lib->valid->custom_regex(...);
$this->lib->valid->custom_regex('ABC!', '/^[a-z0-9]+$/'); // False
$this->lib->valid->custom_regex('abc123', '/^[a-z0-9]+$/'); // True


password()

Check is password 6–128 chars.

Parameters: $data, $min = 6, $max = 128

Usage Example:

$this->lib->valid->password(...);
$this->lib->valid->password('abc'); // false (too short)
$this->lib->valid->password('пароль123'); // false (non-ASCII)
$this->lib->valid->password(' '); // false (contains space - ASCII 32)
$this->lib->valid->password('abc123', 2, 5); // false
$this->lib->valid->password('pass@123!'); // true
$this->lib->valid->password('qwerty'); // true

password_strength()

Check password strength Return values

  • '-1' = not match
  • 1 = weak
  • 2 = not weak
  • 3 = acceptable
  • 4 = strong

Parameters: $data, $min = 6, $max = 128

Usage Example:

$this->lib->valid->password_strength(...);
$this->lib->valid->password_strength('123456'); // 1 — only digits
$this->lib->valid->password_strength('abcdef'); // 1 — only lowercase letters
$this->lib->valid->password_strength('abc123'); // 2 — letters + digits
$this->lib->valid->password_strength('Abc123'); // 3 — uppercase + lowercase + digits
$this->lib->valid->password_strength('Abc123@!'); // 4 — everything included
$this->lib->valid->password_strength('abc'); // -1 — too short
$this->lib->valid->password_strength('abc123', 2, 5); // -1
$this->lib->valid->password_strength('пароль123'); // -1 — invalid characters (non-ASCII)


email()

Check is valid e-mail address

Parameters: string $data

Usage Example:

$this->lib->valid->email(...);
$this->lib->valid->email('not-email'); // False
$this->lib->valid->email('example@mail.com'); // True

id()

Check is valid. By default, will check from 1.

Parameters: string $data, int $min = 1

Usage Example:

$this->lib->valid->id(...);
$this->lib->valid->id(0); // False
$this->lib->valid->id('Hello'); // False
$this->lib->valid->id(-2); // False
$this->lib->valid->id(5); // True

digits()

Check is integer with a string type

Parameters: $data, $min = -1, $max = -1

Usage Example:

$this->lib->valid->digits(...);
$this->lib->valid->digits('abc'); // False
$this->lib->valid->digits('123'); // True

float_digits()

Parameters: $data, $min = -1, $max = -1

Usage Example:

$this->lib->valid->float_digits(...);
$this->lib->valid->float_digits('abc'); // False
$this->lib->valid->float_digits(-12); // False
$this->lib->valid->float_digits('12'); // True
$this->lib->valid->float_digits('12.34'); // True

ip()

Check the correct IP Address

Parameters: $data

Usage Example:

$this->lib->valid->ip(...);
$this->lib->valid->ip('Hello'); // False
$this->lib->valid->ip('10'); // False
$this->lib->valid->ip('999.999.999.999'); // False
$this->lib->valid->ip('192.168.1.1'); // True

http_host()

Check is a valid hostname.

Parameters: $data

Usage Example:

$this->lib->valid->http_host(...);
$this->lib->valid->http_host('Hello'); // False
$this->lib->valid->http_host('14'); // False
$this->lib->valid->http_host('inv@lid.com'); // False
$this->lib->valid->http_host('localhost'); // False
$this->lib->valid->http_host('exam_ple.com'); // False
$this->lib->valid->http_host('example.com'); // True
$this->lib->valid->http_host('sub.example.am'); // True

between()

Check value between a b value.

Parameters: $data, $a, $b

Usage Example:

$this->lib->valid->between(...);
$this->lib->valid->between(15, 1, 10); // False
$this->lib->valid->between(5, 1, 10); // True
$this->lib->valid->between(5, 5, 10); // True

az_09()

Check string is alphanumeric underscores and dashes.

Parameters: $data

Usage Example:

$this->lib->valid->az_09(...);
$this->lib->valid->az_09('invalid!'); // False
$this->lib->valid->az_09('abc@123!'); // False
$this->lib->valid->az_09('10'); // True
$this->lib->valid->az_09('AM_10'); // True
$this->lib->valid->az_09('test_string-01'); // True

alpha_numeric()

Parameters: $data

Usage Example:

$this->lib->valid->alpha_numeric(...);
$this->lib->valid->alpha_numeric('invalid!'); // False
$this->lib->valid->alpha_numeric('abc@123!'); // False
$this->lib->valid->alpha_numeric('AM_10'); // False
$this->lib->valid->alpha_numeric('test_string-01'); // False
$this->lib->valid->alpha_numeric('10'); // True
$this->lib->valid->alpha_numeric('example'); // True
$this->lib->valid->alpha_numeric('Example'); // True
$this->lib->valid->alpha_numeric(''); // True

alpha()

Check, is string contains only alpha.

Parameters: string $data

Usage Example:

$this->lib->valid->alpha(...);
$this->lib->valid->alpha('17'); // False
$this->lib->valid->alpha('hello123'); // False
$this->lib->valid->alpha('test_string'); // False
$this->lib->valid->alpha('test_string-01'); // False
$this->lib->valid->alpha('hello'); // True
$this->lib->valid->alpha('Hello'); // True

required()

Check data with the required length.

Parameters: $data, int $min = -1, int $max = -1

Usage Example:

$this->lib->valid->required(...);
$this->lib->valid->required(''); // False
$this->lib->valid->required('', 1, 10); // False
$this->lib->valid->required('abc', 6, 10); // False
$this->lib->valid->required('10'); // True
$this->lib->valid->required('test_string-01'); // True
$this->lib->valid->required('abc', 2, 10); // True

url()

Check is valid url.

Parameters: string $data

Usage Example:

$this->lib->valid->url(...);
$this->lib->valid->url('not a url'); // False
$this->lib->valid->url('https://example.com'); // True

is_date()

Check is parameter str is true date

Parameters: string $string

Usage Example:

$this->lib->valid->is_date(...);
$this->lib->valid->is_date('01/05/2024'); // False
$this->lib->valid->is_date('2024-05-01'); // True

date_iso()

Check valid ISO dateFormat: YYYY-MM-DD (eg 1997-07-16).

Parameters: $data

Usage Example:

$this->lib->valid->date_iso(...);
$this->lib->valid->date_iso('17'); // False
$this->lib->valid->date_iso('Hello'); // False
$this->lib->valid->date_iso('2024-13-01'); // False
$this->lib->valid->date_iso('2024-00-01'); // False
$this->lib->valid->date_iso('2024-05-32'); // False
$this->lib->valid->date_iso('text 2024-05-13'); // False
$this->lib->valid->date_iso('2024-05-13'); // True
$this->lib->valid->date_iso('2024-02-29'); // True

date_time()

Check valid date timeFormat: YYYY-MM-DDTHH:mm:ss.SSS (eg 2021-06-30T12:37:25).

Parameters: $data

Usage Example:

$this->lib->valid->date_time(...);
$this->lib->valid->date_time('17'); // False
$this->lib->valid->date_time('invalid string'); // False
$this->lib->valid->date_time('2024-13-01T10:00:00'); // False
$this->lib->valid->date_time('2024-02-30T10:00:00'); // False
$this->lib->valid->date_time('2024-05-13T25:00:00'); // False
$this->lib->valid->date_time('2024-05-13T15:30:45'); // True
$this->lib->valid->date_time('2024-12-31T23:59:59.123'); // True

time()

Check is correct time HH:MM

Parameters: $data

Usage Example:

$this->lib->valid->time(...);
$this->lib->valid->time('abc'); // False
$this->lib->valid->time('10'); // False
$this->lib->valid->time('25:99'); // False
$this->lib->valid->time('12:30'); // True

enum()

Check valid enum typeFormat: male-female

Parameters: $data, $enum

Usage Example:

$this->lib->valid->enum(...);
$this->lib->valid->enum('other', ['male', 'female']); // False
$this->lib->valid->enum('Male', ['male', 'female']); // False
$this->lib->valid->enum('1', [1, 2, 3]); // False
$this->lib->valid->enum('male', ['male', 'female']); // True
$this->lib->valid->enum(1, [1, 2, 3]); // True

is_json()

Check is string valid JSON

Parameters: string $string

Usage Example:

function is_json(...);
$this->lib->valid->is_json('Hello'); // False
$this->lib->valid->is_json('17'); // False
$this->lib->valid->is_json('{name:John}'); // False
$this->lib->valid->is_json('{"name":"John"}'); // True

phone()

Check the correct Phone Address

Parameters: $data

Usage Example:

$this->lib->valid->phone(...);
$this->lib->valid->phone('abc'); // False
$this->lib->valid->phone('09999111222'); // False
$this->lib->valid->phone('+37499111222'); // True